sys.syscomments (Transact-SQL)

Содержит записи для всех представлений, правил, значений по умолчанию, триггеров, ограничений CHECK и DEFAULT, а также для всех хранимых процедур в базе данных. Столбец text содержит инструкции исходных определений SQL.

Важное примечаниеВажно!

Эта системная таблица SQL Server 2000 включена в СУБД как представление для обеспечения обратной совместимости. Вместо нее рекомендуется использовать системные представления SQL Server. Сведения о том, как найти эквивалентное представление, см. в разделе Сопоставление системных таблиц SQL Server 2000 и системных представлений SQL Server 2005. В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется.

Имя столбца

Тип данных

Описание

id

int

Идентификатор объекта, к которому применяется текст.

number

smallint

Номер внутри группирования процедур, если группирование существует.

0 = записи не являются процедурами.

colid

smallint

Последовательный номер строки для определения объекта с длиной более 4 000 символов.

status

smallint

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

ctext

varbinary(8000)

Приблизительное число байтов в инструкции определения SQL.

texttype

smallint

0 = пользовательский комментарий

1 = системный комментарий

4 = зашифрованный комментарий

language

smallint

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

encrypted

bit

Указывает, применялось ли к определению процедуры запутывание.

0 = запутывание не применялось;

1 = запутывание применялось.

Важное примечаниеВажно!
Чтобы применить запутывание к определению хранимых процедур, используется инструкция CREATE PROCEDURE с ключевым словом ENCRYPTION.

compressed

bit

Всегда возвращает значение 0. Это означает, что процедура сжата.

text

nvarchar(4000)

Фактический текст инструкции определения SQL.

SQL Server 2008 отличается от SQL Server 2000 способом расшифровки и хранения выражений SQL в метаданных каталога. Семантика расшифрованных выражений соответствует исходному тексту, однако правильность синтаксиса не гарантируется. Например, пробельные символы удаляются из дешифрованного выражения.

Это представление, совместимое с SQL Server 2000, получает информацию из текущих структур SQL Server и может возвращать больше символов, чем в определении nvarchar(4000). Хранимая процедура sp_help возвращает nvarchar(4000) как тип данных текстового столбца. При работе с syscomments лучше использовать nvarchar(max). Для новых разработок не используйте syscomments.