Ich habe an vielen Tischen gearbeitet und alle hatten dieses Ding:
CREATE TABLE Persons(
[id] [int] IDENTITY(1,1) NOT NULL,
[modified_on] [datetime] NULL,
[modified_by] [varchar](200) NULL,
)
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Was ist TEXTIMAGE_ON [PRIMARY]
in SQL Server / Transact-SQL?
sql-server
Mitul Sheth
quelle
quelle
Antworten:
Aus dem MSDN
quelle
Vorausgesetzt, das Format ist:
TEXTIMAGE
bezieht sich auf alle großen / unbegrenzten Feldtypen: Text, ntext, Bild, XML, varchar (max), nvarchar (max), varbinary (max) und benutzerdefinierte CLR-Typspalten (einschließlich Geometrie und Geografie).Dann müssen Sie wissen, was Dateien und Dateigruppen sind. Aus dem MSDN-Eintrag für Datenbankdateien und Dateigruppen :
So,
Scheint etwas redundant zu sein, da die genannten Spalten mit großem Textwert in der primären Dateigruppe gespeichert werden sollten, was eigentlich die Standardaktion ist.
Unter der Annahme, dass es eine benutzerdefinierte Dateigruppe namens CUSTOM gibt, würden Sie wahrscheinlich Folgendes schreiben:
Sie würden eine benutzerdefinierte Dateigruppe erstellen, um große Binärdateien oder Text zu speichern. In diesem Fall würden die Informationen zu "normalen" Feldern in einer Datendatei in der primären Dateigruppe gespeichert, während die zugehörigen "großen" Felder in einer physisch unterschiedlichen Datendatei gespeichert würden (in der sekundären benutzerdefinierten Dateigruppe).
Sie würden dies tun, um das relationale Kerndatenmodell (das vermutlich relativ klein im Hinblick auf den Speicherplatz wäre) von den großen Feldern (die proportional mehr Speicherplatz benötigen) zu trennen, um unterschiedliche Archivierungs- oder Replikationsstrategien zu ermöglichen auf jede Dateigruppe angewendet werden.
quelle
Wenn Sie keine großen Textspalten haben, z. B. Text, ntext, Bild, XML, varchar (max), nvarchar (max), varbinary (max) und CLR, können Sie einfach Folgendes verwenden:
quelle
[modified_by] [varchar](200) NULL