Как сохранить данные в строке в SQL Server - PullRequest
5 голосов
/ 21 марта 2012

Я пытаюсь определить, хранятся ли данные в столбце VARCHAR(n) в SQL Server 2008 в строке или вне строки. Кто-нибудь знает, как это сделать?

Кроме того, есть ли способ сохранить данные в строке, если мы хотим их там?

Ответы [ 3 ]

3 голосов
/ 21 марта 2012

Чтобы увидеть, является ли значение в строке или вне строки, вы можете использовать DBCC PAGE

Способ заставить столбец VARCHAR(N) быть в строке (неVARCHAR(MAX) должен сделать его частью ключа кластеризованного индекса. Это, конечно, ограничивает длину поля до максимального размера ключа индекса 900.

1 голос
/ 21 марта 2012

Проверьте параметр " большие значения вне строки " в SQL Server, если это столбец VARCHAR (MAX). Документацию стоит прочитать, поскольку установка этой опции не приводит к немедленному преобразованию данных в таблице.

sp_tableoption N'MyTable', 'large value types out of row', 'OFF'
0 голосов
/ 21 марта 2012

, чтобы показать, насколько большой может быть строка, прежде чем используется внешнее хранилище строк:

    select OBJECTPROPERTY(Object_id('TableName'), 'TableTextInRowLimit')

, чтобы указать в хранилище строк для таблицы:

    sp_tableoption 'TableName', 'text in row', 'ON'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...