Pracowałem na wielu stołach i wszyscy mieli to:
CREATE TABLE Persons(
[id] [int] IDENTITY(1,1) NOT NULL,
[modified_on] [datetime] NULL,
[modified_by] [varchar](200) NULL,
)
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Co znajduje się TEXTIMAGE_ON [PRIMARY]
w SQL Server / Transact-SQL?
sql-server
Mitul Sheth
źródło
źródło
Odpowiedzi:
Z MSDN
źródło
Biorąc pod uwagę, że format jest następujący:
TEXTIMAGE
odnosi się do wszystkich typów pól o dużym / nieograniczonym rozmiarze: tekst, ntext, obraz, xml, varchar (max), nvarchar (max), varbinary (max) i kolumny typu zdefiniowanego przez użytkownika CLR (w tym geometria i geografia).Następnie musisz wiedzieć, jakie są pliki i grupy plików. Z wpisu MSDN dotyczącego plików bazy danych i grup plików :
Więc,
Wydawałoby się, że jest nieco zbędny, ponieważ mówi, że wspomniane kolumny z dużymi wartościami tekstowymi powinny być przechowywane w podstawowej grupie plików, co jest w rzeczywistości akcją domyślną.
Zakładając istnienie niestandardowej grupy plików o nazwie CUSTOM, prawdopodobnie napisałbyś coś takiego:
Utworzyłbyś niestandardową grupę plików do przechowywania dużych plików binarnych lub tekstowych, aw tym przypadku informacje o „normalnych” polach znajdowałyby się w pliku danych w podstawowej grupie plików, podczas gdy powiązane „duże” pola byłyby przechowywane w fizycznie odrębnym pliku danych (w dodatkowej niestandardowej grupie plików).
Zrobiłbyś to, abyś mógł oddzielić podstawowy relacyjny model danych (który przypuszczalnie byłby stosunkowo mały pod względem miejsca na dysku) od dużych pól (które będą wymagały proporcjonalnie więcej miejsca na dysku) - aby umożliwić różne strategie archiwizacji lub replikacji być stosowane do każdej grupy plików.
źródło
Jeśli nie masz żadnych dużych kolumn tekstowych, tj. Text, ntext, image, xml, varchar (max), nvarchar (max), varbinary (max) i CLR, możesz po prostu użyć:
źródło
[modified_by] [varchar](200) NULL