Trabajé en muchas tablas y todas tenían esto:
CREATE TABLE Persons(
[id] [int] IDENTITY(1,1) NOT NULL,
[modified_on] [datetime] NULL,
[modified_by] [varchar](200) NULL,
)
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
¿Qué hay TEXTIMAGE_ON [PRIMARY]
en SQL Server / Transact-SQL?
sql-server
Mitul Sheth
fuente
fuente
Respuestas:
Desde MSDN
fuente
Dado que el formato es:
TEXTIMAGE
se refiere a todos los tipos de campos grandes / de tamaño ilimitado: text, ntext, image, xml, varchar (max), nvarchar (max), varbinary (max) y columnas de tipo definido por el usuario CLR (incluidas geometría y geografía).Entonces, necesita saber qué son archivos y grupos de archivos. Desde la entrada de MSDN en Archivos de base de datos y grupos de archivos :
Entonces,
Parecería ser algo redundante, ya que dice que las columnas de valores de texto grandes mencionadas deben almacenarse dentro del grupo de archivos principal, que en realidad es la acción predeterminada.
Suponiendo la existencia de un grupo de archivos personalizado llamado CUSTOM, probablemente escribiría algo como esto:
Debería crear un grupo de archivos personalizado para almacenar texto o binario grande, y en este caso la información de los campos 'normales' se ubicaría en un archivo de datos en el grupo de archivos principal, mientras que los campos 'grandes' asociados se almacenarían en un archivo de datos físicamente distinto (en el grupo de archivos personalizado secundario).
Debería hacer esto para poder separar el modelo de datos relacional central (que presumiblemente sería relativamente pequeño en términos de espacio en disco) de los campos grandes (que requerirán proporcionalmente más espacio en disco), para permitir distintas estrategias de archivado o replicación. aplicarse a cada grupo de archivos.
fuente
Si no tiene columnas de texto grandes, es decir, text, ntext, image, xml, varchar (max), nvarchar (max), varbinary (max) y CLR, entonces puede usar:
fuente
[modified_by] [varchar](200) NULL