Elimine el límite máximo de columnas de SQL Server de 1024 y 8kb de tamaño de registro

Estoy creando una tabla con 1000 columnas. La mayoría de las columnas sonnvarchar tipo. Se crea la tabla, pero con una advertencia.

Advertencia: la tabla "Prueba" se ha creado, pero su tamaño máximo de fila supera el máximo permitido de 8060 bytes. INSERTAR o ACTUALIZAR a esta tabla fallará si la fila resultante excede el límite de tamaño.

La mayoría de las columnas de la tabla ya tienen datos (es decir, el 99% de las columnas tienen datos). Cuando intento actualizar cualquier columna después del 310 (donde como todas las 309 columnas iniciales tienen algún valor), se produce un error:

No se puede crear una fila de tamaño 8061 que sea mayor que el tamaño de fila máximo permitido de 8060.

Estoy insertando estos datos a todas las 308 columnas iniciales

"Lorem ipsum dolor sit amet, consectetur adipisicing elit".

Cuando estoy usandontext El tipo de datos entonces me permite actualizar alrededor de 450 columnas pero más allá de esontext Tampoco me está permitiendo. Tengo que actualizar al menos 700 columnas. Qué SQL Server no está permitiendo hacer eso. Tengo el escenario de que no puedo mover algunas columnas de tabla a otra tabla.

En realidad estoy trabajando para una aplicación de ventana existente. Es una aplicación de ventanas muy grande.

En realidad, la tabla en la que estoy tratando de insertar hasta 700 nvarchar columnas de datos se crea dinámicamente en tiempo de ejecución. Solo en algunos casos se requiere insertar 400-600 columnas. Pero generalmente necesita de 100 a 200 columnas que puedo procesar fácilmente.

El problema es que no puedo dividir esta tabla en varias tablas. Debido a que muchas tablas creadas con estas estructuras y nombres de tablas se mantienen en otra tabla, es decir, hay más de 100 tablas con esta estructura y se crean dinámicamente. Para crear la tabla y manipular sus datos, se utilizan 4 a 5 idiomas (C #, Java ..) y WCF, el Servicio de Windows y los Servicios Web también implica.

Así que no creo que sea fácil manipular la tabla y sus datos después de dividir la tabla. Si divido la tabla entonces requeriría muchos cambios estructurales.

Así que, por favor, sugiéranme cuál sería la mejor manera de resolver este problema.

También he tratado de usarColumna dispersa me gusta:

Create table ABCD(Id int, Name varchar(100) Sparse, Age int);

También he pensado enColumnStoreIndex Pero mi propósito no está resuelto.

La columna dispersa me permite crear 3000 columnas para una tabla, pero también me restringe el tamaño de la página.

¿Hay alguna forma de lograrlo utilizando alguna tabla temporal o utilizando cualquier otro tipo de objeto de servidor SQL?