Desbordando AVG y SUM: Cuando SQL Server se queda sin dedos para sumar

¡Cuidado! Sólo puedes tener 128 niveles en el tipo de datos XML

En la versión 2005 de Microsoft SQL Server, dábamos la bienvenida al nuevo tipo de datos XML. Éste nos prometía un sinfín de comodidades y ventajas en el uso y almacenamiento de XMLs en nuestras bases de datos.

Así, haciendo un uso correcto de los mismos, podríamos tener nuestra información con estructuras heterogéneas almacenada en este markup language tan popular, sin engorrosas conversiones a cadenas o datos binarios.

A su vez, SQL Server nos proveía con una serie de métodos y facilidades que daban un importante soporte al nuevo tipo de datos.

Sin embargo, algunos ya nos hemos topado con una limitación -no resuelta en SQL Server 2008- con el tipo de datos XML: Sólo soporta hasta 128 niveles de profundidad en los nodos del XML que almacena. Sí, son muchos, pero no deja de ser un límite. Y un límite alcanzable. Ha ocurrido, ocurre, y ocurrirá.


Así que, si te decides por el tipo de datos XML para el diseño de alguna de tus tablas, ten en cuenta la limitación expuesta. Si tus XMLs son susceptibles de almacenar muchos niveles de datos en sus nodos, antes o después te encontrarás con el "fin del mundo":

XML datatype instance has too many levels of nested nodes. Maximum allowed depth is 128 levels.

Comentarios