Безграничный ввод хранимой процедуры

Я передаю список идентификаторов, разделенных запятыми, в хранимую процедуру как varchar (MAX). Проблема заключается в том, что varchar ограничивается 8000 символами, и список потенциально может быть больше.

Есть ли тип данных sql, где размер не имеет значения? Не каламбур.


person JAKEtheJAB    schedule 08.12.2009    source источник


Ответы (2)


varchar(MAX) не ограничивается 8000 символов. Это замена типа данных text (который сейчас устарел). MAX — это не просто сокращение для постоянного значения 8000; на самом деле это указывает на то, что переменная должна иметь возможность хранить произвольно большое количество данных.

Однако, если вы объявляете переменную varchar без MAX в качестве квалификатора, она будет ограничена 8000.

person Adam Robinson    schedule 08.12.2009

Нет, varchar(MAX) НЕ ограничен 8000 символами, так что все будет в порядке.

person Maximilian Mayerl    schedule 08.12.2009