Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_Otveti_po_liksiam.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
346 Кб
Скачать
☆
  1. Инструкции языка описания данных Transact-sql Инструкции языка описания данных ddl (Transact-sql)

SQL Server 2012

Язык описания данных DDL — это словарь, используемый для определения структур данных в SQL Server 2012. Эти инструкции используются для создания, изменения и удаления структур данных в экземпляре SQL Server.

В этом разделе

Инструкции ALTER (Transact-SQL)

Инструкции CREATE (Transact-SQL)

DISABLE TRIGGER (Transact-SQL)

Инструкции DROP (Transact-SQL)

ENABLE TRIGGER (Transact-SQL)

TRUNCATE TABLE (Transact-SQL)

UPDATE STATISTICS (Transact-SQL)

Инструкции alter (Transact-sql)

SQL Server 2012

SQL Server Transact-SQL содержит следующие инструкции ALTER. Инструкции ALTER используются для изменения определений существующих сущностей. Например, с помощью инструкции ALTER TABLE можно добавить новый столбец в таблицу, а инструкция ALTER DATABASE позволяет задавать параметры базы данных.

Инструкции create (Transact-sql)

SQL Server 2012

SQL ServerTransact-SQL содержит следующие инструкции CREATE. Инструкции CREATE используются для определения новых сущностей. Например, при помощи инструкции CREATE TABLE можно добавить новую таблицу в базу данных.

DISABLE TRIGGER (Transact-SQL)

SQL Server 2012

Отключает триггер.

 Синтаксические обозначения Transact-SQL

Синтаксис

DISABLE TRIGGER { [ schema_name . ] trigger_name [ ,...n ] | ALL }

ON { object_name | DATABASE | ALL SERVER } [ ; ]

Аргументы

schema_name

Имя схемы, к которой принадлежит триггер. schema_name не может указываться для триггеров DDL или триггеров входа.

trigger_name

Имя триггера, который нужно отключить.

ALL

Означает, что все триггеры в области действия предложения ON будут отключены.

 Внимание!

SQL Server создает триггеры в базах данных, опубликованных для репликации слиянием. Если в опубликованных базах данных указано значение ALL, то эти триггеры отключаются, что прерывает репликацию. Перед тем как задавать значение ALL, убедитесь, что текущая база данных не опубликована для репликации слиянием.

object_name

Имя таблицы или представления, для выполнения которых создан триггер DML с именем trigger_name.

DATABASE

Для триггера DDL показывает, что аргумент trigger_name был создан или изменен для выполнения в области базы данных.

ALL SERVER

Для триггера DDL показывает, что аргумент trigger_name был создан или изменен для выполнения в области сервера. Параметр ALL SERVER также применяется к триггерам входа.

Инструкции drop (Transact-sql)

SQL Server 2012

SQL Server Transact-SQL содержит следующие инструкции DROP. Инструкции DROP используются для удаления существующих сущностей. Например, при помощи инструкции DROP TABLE можно удалить таблицу из базы данных.

ENABLE TRIGGER (Transact-SQL)

SQL Server 2012

Включает триггер DML, DDL или logon.

 Синтаксические обозначения Transact-SQL

Синтаксис

ENABLE TRIGGER { [ schema_name . ] trigger_name [ ,...n ] | ALL }

ON { object_name | DATABASE | ALL SERVER } [ ; ]

Аргументы

schema_name

Имя схемы, к которой принадлежит триггер. schema_name не может указываться для триггеров DDL или триггеров входа.

trigger_name

Имя триггера.

ALL

Указывает, что включаются все триггеры, определенные в области предложения ON.

object_name

Имя таблицы или представления, в которых был создан для выполнения триггер DML trigger_name.

DATABASE

Для триггера DDL указывает, что триггер trigger_name был создан или изменен для выполнения в области базы данных.

ALL SERVER

Для триггера DDL показывает, что аргумент trigger_name был создан или изменен для выполнения в области сервера. Параметр ALL SERVER также применяется к триггерам входа.

TRUNCATE TABLE (Transact-SQL)

SQL Server 2012

Удаляет все строки в таблице, не записывая в журнал удаление отдельных строк. Инструкция TRUNCATE TABLE похожа на инструкцию DELETE без предложения WHERE, однако TRUNCATE TABLE выполняется быстрее и требует меньших ресурсов системы и журналов транзакций.

 Синтаксические обозначения Transact-SQL

Синтаксис

TRUNCATE TABLE

    [ { database_name .[ schema_name ] . | schema_name . } ]

    table_name

[ ; ]

Аргументы

database_name

Имя базы данных.

schema_name

Имя схемы, которой принадлежит таблица.

table_name

Имя таблицы, которая должна быть усечена, или таблицы, из которой удаляются все строки. table_name должно быть литералом. table_name не может быть функцией OBJECT_ID() или переменной.

UPDATE STATISTICS (Transact-SQL)

SQL Server 2012

Обновляет статистику оптимизации запросов для таблицы или индексированного представления. По умолчанию оптимизатор запросов обновляет статистику по мере необходимости для усовершенствования плана запроса. В некоторых случаях можно повысить производительность запроса, выполняя обновление статистики с помощью инструкции UPDATE STATISTICS или хранимой процедуры sp_updatestats чаще, чем это происходит по умолчанию.

Обновление статистики гарантирует, что запросы будут компилироваться с актуальной статистикой. Однако обновление статистики вызывает перекомпиляцию запросов. Рекомендуется не обновлять статистику слишком часто, поскольку необходимо найти баланс между выигрышем в производительности за счет усовершенствованных планов запросов и потерей времени на перекомпиляцию запросов. Критерии выбора компромиссного решения зависят от приложения.Операции UPDATE STATISTICS могут обращаться к базе данных tempdb для сортировки выборки строк при построении статистики.

 Синтаксические обозначения Transact-SQL

Синтаксис

UPDATE STATISTICS table_or_indexed_view_name

[

{

{ index_or_statistics__name }

| ( { index_or_statistics_name } [ ,...n ] )

}

]

[ WITH

[

FULLSCAN

| SAMPLE number { PERCENT | ROWS }

| RESAMPLE

| <update_stats_stream_option> [ ,...n ]

]

[ [ , ] [ ALL | COLUMNS | INDEX ]

[ [ , ] NORECOMPUTE ]

] ;

<update_stats_stream_option> ::=

[ STATS_STREAM = stats_stream ]

[ ROWCOUNT = numeric_constant ]

[ PAGECOUNT = numeric_contant ]

Аргументы

table_or_indexed_view_name

Имя таблицы или индексированного представления, для которого требуется обновить статистику.

index_or_statistics_name

Имя индекса, для которого обновляется статистика, или имя обновляемой статистики. Если аргумент index_or_statistics_name не указан, то оптимизатор запросов обновляет всю статистику для таблицы или индексированного представления. Сюда входит статистика, созданная инструкцией CREATE STATISTICS, статистика по отдельным столбцам, созданная при включенном параметре AUTO_CREATE_STATISTICS, и статистика, созданная для индексов.

Дополнительные сведения о параметре AUTO_CREATE_STATISTICS см. в разделе Параметры ALTER DATABASE SET (Transact-SQL). Просмотреть все индексы для таблицы или представления можно с помощью процедуры sp_helpindex.

FULLSCAN

Вычисляет статистику путем просмотра всех строк в таблице или индексированном представлении. FULLSCAN и SAMPLE 100 PERCENT имеют одинаковые результаты. FULLSCAN не может быть использован с параметром SAMPLE.

SAMPLE number { PERCENT | ROWS }

Указывает приблизительное процентное соотношение или число строк в таблице или индексированном представлении для оптимизатора запросов, которые используются при обновлении статистики. Аргумент number для параметра PERCENT может иметь значение от 0 до 100, а для параметра ROWS — от 0 до общего числа строк. Фактическое процентное соотношение или число строк, отбираемых оптимизатором запросов, может не совпадать с заданным значением. Например, оптимизатор запросов просматривает все строки на странице данных.

Команда SAMPLE полезна в особых случаях, в которых план запроса на основе выборки по умолчанию не является оптимальным. В большинстве случаев нет необходимости использовать команду SAMPLE, так как оптимизатор запросов делает выборку и определяет размер статистически значимой выборки по умолчанию, что требуется для создания высококачественных планов запроса.

Параметр SAMPLE нельзя использовать вместе с параметром FULLSCAN. Если не указана ни одна из команд SAMPLE или FULLSCAN, оптимизатор запросов использует выбранные данные и вычисляет размер выборки по умолчанию.

Не рекомендуется указывать значения 0 PERCENT и 0 ROWS. Если для PERCENT или ROWS указано значение 0, объект статистики будет обновлен без статистических данных.

RESAMPLE

Обновить каждый объект статистики, используя последнее значение частоты выборки.

Использование RESAMPLE может вызвать просмотр полной таблицы. Например, статистика для индексов использует для частоты выборки просмотр полной таблицы. Если не указан ни один из параметров выборки (SAMPLE, FULLSCAN, RESAMPLE), оптимизатор запросов выполняет выборку данных и вычисляет размер выборки по умолчанию.

ALL | COLUMNS | INDEX

Обновить всю существующую статистику, созданную по одному или нескольким столбцам, или статистику, созданную для индексов. Если не указан ни один параметр, инструкция UPDATE STATISTICS обновляет всю статистику для таблицы или индексированного представления.

NORECOMPUTE

Отключить параметр автоматического обновления статистики AUTO_UPDATE_STATISTICS для указанной статистики. Если указан этот параметр, оптимизатор запросов завершает текущее обновление статистики и отключает обновление в будущем.

Чтобы возобновить действие параметра AUTO_UPDATE_STATISTICS, снова выполните инструкцию UPDATE STATISTICS без параметра NORECOMPUTE или выполните процедуру sp_autostats.

 Внимание!

Использование этого параметра может привести к созданию неоптимальных планов запросов. Рекомендуется ограничить использование этого параметра, причем использовать его надлежит только опытным системным администраторам.

Дополнительные сведения о параметре AUTO_STATISTICS_UPDATE см. в разделе Параметры ALTER DATABASE SET (Transact-SQL).

<update_stats_stream_option>

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]