Главная / Базы данных / Программирование в Microsoft SQL Server 2000

Программирование в Microsoft SQL Server 2000 - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Курс познакомит вас с Microsoft SQL Server 2000 - одним из перспективных инструментов для создания и управления реляционными базами данных.
Основным инструментом для администрирования SQL Server 2000 является:
(1) Microsoft Management Console
(2) SQL Server Query Analyzer
(3) SQL Server Enterprise Manager
Диаграммы баз данных обеспечивают:
(1) стандартное табличное представление структуры и отношений таблиц в базе данных (схему базы данных)
(2) быстродействие при внесении изменений в базу данных
(3) визуальное представление структуры и отношений таблиц в базе данных (схему базы данных)
Конструктор запросов Query Designer позволяет:
(1) просматривать эффективность выполнения запросов
(2) определять функциональность запросов
(3) просматривать, добавлять и управлять строками в таблице
Правильный синтаксис оператора SELECT:
(1) SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ]
(2) SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ]
(3) SELECT select_list [ INTO new_table ] [FROM table_source ] WHERE search_condition
Фраза ORDER BY является:
(1) НЕобязательным компонентом многих операторов T-SQL, таких как SELECT, UNION, CREATE TABLE и других
(2) обязательным компонентом оператора SELECT
(3) НЕобязательным компонентом оператора SELECT
Фраза FROM используется для:
(1) объединения результаты выбора столбцов
(2) группировки результирующих строк запроса
(3) извлечения столбцов из нескольких таблиц и представлений в одном запросе
Использование ключевого слова DISTINCT позволяет:
(1) возвращать все строки в результирующем множестве
(2) объединять строки с одинаковыми значениями в столбце или в столбцах, заданных во фразе, в одну строку
(3) избегать дублирующихся строк в результирующем множестве
Представление представляет собой:
(1) любой объект базу данных, используемый в операторе SELECT
(2) реальную таблицу, создаваемую средствами Enterprise Manager
(3) виртуальную таблицу, которая создается путем выполнения оператора SELECT
Оператор INSERT имеет синтаксис:
(1) INSERT INTO { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } < table_hint_limited > ::= { FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK }
(2) INSERT INTO ( table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited ) ( [ ( column_list ) ] [ VALUES ( { DEFAULT | NULL | expression } [ ,...n] ) | derived_table | execute_statement ] ) | DEFAULT VALUES < table_hint_limited > ::= ( FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK )
(3) INSERT [ INTO] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { [ ( column_list ) ] { VALUES ( { DEFAULT | NULL | expression } [ ,...n] ) | derived_table | execute_statement } } | DEFAULT VALUES < table_hint_limited > ::= { FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK }
Оператор UPDATE позволяет:
(1) определять значения только столбцов таблицы
(2) изменять значения только в одной строке таблицы
(3) изменять значения в одной или в нескольких строках таблицы
Правильный синтаксис оператора DELETE имеет вид:
(1) DELETE { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
(2) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ]
(3) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ] [ WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } ] [ OPTION ( < query_hint > [ ,...n ] ) ]
Существуют различные способы создания резервной копии базы данных:
(1) создание полной резервной копии
(2) синтезирование журнала транзакций
(3) резервное копирование журнала транзакций
(4) дифференциальное резервирование
(5) статический метод резервирования
Data Transformation Services (DTS) определяет:
(1) сервис доступа к объектам базы данных: таблицам, представлениям, хранимым процедурам и др.
(2) утилиту для быстрого и эффективного обновления и преобразования данных
(3) набор графических инструментальных средств и программных объектов, который дает возможность импортировать и экспортировать данные, преобразовывать структуры данных и объединять данные из различных источников для их анализа и составления отчетов
Query Analyzer определяет:
(1) возможность проверки эффективности написанных запросов
(2) структировщик запросов, предоставляет стредства для управления запросами
(3) анализатор запросов, который предоставляет мощные средства для написания и отладки сложных наборов операторов T-SQL различных типов
Язык обращения с данными DML предназначен для:
(1) создания объектов в базе данных и для установки свойств и значений атрибутов самой базы данных
(2) управления доступом к средствам администрирования
(3) создания и получения данных
Планы выполнения предназначены для:
(1) объединения нескольких запросов в один для улучшения производительности
(2) более удобного управления запросами
(3) графического отображения последовательного выполнения запроса SQL Server
К командам DML относятся:
(1) SELECT
(2) DROP
(3) BULK INSERT
(4) ALTER
(5) DELETE
Временные таблицы автоматически удаляются SQL Server 2000 после того, как:
(1) создаются диаграммы баз данных
(2) производится резервное копирование базы данных
(3) все пользователи закончили работу с ними
Синтаксис операторов IF...ELSE имеет вид:
(1) IF Boolean_expression THEN { sql_statement | statement_block } [ WHILE { sql_statement | statement_block } ]
(2) IF Boolean_expression { sql_statement | statement_block } ELSE { sql_statement | statement_block }
(3) IF Boolean_expression { sql_statement | statement_block } [ ELSE { sql_statement | statement_block } ]
SQL Server 2000 поддерживает различные типы курсоров:
(1) курсоры API (курсоры программного интерфейса приложений)
(2) курсоры OLE
(3) курсоры T-SQL
(4) ODBC-курсоры
(5) на основе утилиты Query Analyzer
Хранимые процедуры обладают преимуществами:
(1) способность работать с переменными обладают только хранимые процедуры
(2) хранимые процедуры являются объектами базы данных; они размещаются в файле базы данных и перемещаются вместе с файлом в случае отключения или репликации базы данных
(3) хранимые процедуры позволяют вам передавать данные процедуре для их обработки и принимать обратно от процедуры как данные, так и сформированный процедурой итоговый код
(4) хранимые процедуры работают напрямую с файлами базы данных
(5) хранимые процедуры представляются в оптимизированной форме, что дает возможность ускорить их выполнение
Триггеры характеризуются тем, что:
(1) SQL Server быстрее выполняет их при работе с данными
(2) имеют более широкую синтаксическую форму по сравнению с хранимыми процедурами
(3) SQL Server автоматически вызывает их при обращении к команде, для которой они определены
Под аутентификацией понимается:
(1) проверка при создании идентификатора login ID на корректность
(2) создание идентификатора login ID
(3) проверка предоставленного идентификатора login ID на корректность и определение привилегий
SQL Server 2000 поддерживает различные типы пользовательских функций:
(1) векторные
(2) скалярные
(3) табличные
(4) интегральные
(5) разделяемые
Для каждой логической базы данных SQL Server создает:
(1) один физический файл для журнала транзакций, файлы для объектов создаются по мере необходимости
(2) три физических файла: один для базы данных, второй для объектов и третий для журнала транзакций
(3) два физических файла: один для объектов, а другой для журнала транзакций
Концепция сущностей и атрибутов в описании базы данных в физической реализации соответствуют:
(1) сущности реализуются в виде экземпляров полей, а атрибуты – в виде экземпляров строк
(2) сущности реализуются в виде столбцов, а атрибуты – в виде таблиц
(3) сущности реализуются в виде таблиц, а атрибуты – в виде столбцов
Индекс определяет:
(1) особый объект, который дает возможность устанавливать проверочные ограничения на один или несколько столбцов
(2) утилиту для поиска в базе данных на основе значений из одного или более столбцов
(3) особый объект, который дает возможность базе данных быстро осуществлять доступ к строкам в таблице на основе значений из одного или более столбцов
Существуют типы отношений:
(1) один-к-ничему
(2) один-ко-многим
(3) много-ко-многим
(4) много-к-одному
(5) один-к-одному
Правила целостности данных гарантируют, что:
(1) база данных будет правильно работать при любых данных
(2) данные, содержащиеся в базе данных, являются корректными по отношению к типу данных
(3) данные, содержащиеся в базе данных, являются если не корректными, то по меньшей мере правдоподобными
Умолчания представляют собой:
(1) функции определения данных в одной колонке, по известным значениям других колонок
(2) таблицы, в которых содержатся подставляемые значения для некоторых столбцов базы данных
(3) значения, которые автоматически присваиваются SQL Server 2000, если пользователь не задал значение при создании строки
Перед использованием SQL Server Enterprise Manager для доступа к данным, следует:
(1) сделать резервную копию базы данных, чтобы избежать потери информации
(2) убедиться, что сервер запущен
(3) идентифицировать экземпляр сервера
(4) убедиться в целостности базы данных и ее работоспособности
(5) соединиться с базой данных
Для создания диаграммы базы данных используется мастер:
(1) Create and Update Diagram Wizard
(2) не существует мастера для создания диаграмм
(3) Create Database Diagram Wizard
Для добавления новых строк в Query Designer необходимо:
(1) заполнить новую строку с помощью Row Viewer
(2) в конструкторе запросов Query Designer на панели инструментов щелкнуть Add New, затем ввести данные и нажать Enter
(3) в конструкторе запросов Query Designer щелкнуть на необходимом столбце в последней строке, затем ввести данные и щелкнуть на любой другой строке
Для отбора избранных столбцов оператор SELECT может иметь вид:
(1) SELECT * FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
(2) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer WHERE Customer.CustID = Sale.CustID
(3) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
Тип сортировки Ascending определяет:
(1) возвращение строк в порядке убывания
(2) сортировку по группам в таблице
(3) возвращение строк в порядке возрастания
Если запрос связывает более одной таблицы, и таблицы содержат столбцы с одинаковыми именами, следует:
(1) по возможности не использовать таблицы с одинаковыми именами или же использовать псевдонимы
(2) использовать распределенное описание для объекта
(3) использовать полную спецификацию для объекта
filesДанное окно позволяет:
(1) определить представление будущей диаграммы
(2) установить свойства таблиц в запросе, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
(3) установить свойства запроса, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
Представления можно создавать с помощью мастера:
(1) Create Object View Wizard
(2) Create Virtual Table Wizard
(3) Create View Wizard
При использовании оператора INSERT для модификации представления следует учитывать ограничения:
(1) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(2) представление должно ссылаться на таблицу во фразе FROM
(3) представление не должно содержать вычисляемых столбцов
(4) оператор INSERT модифицирует столбцы только из одной таблицы
(5) представление не должно содержать функций агрегирования
При использовании оператора UPDATE для модификации представления следует учитывать ограничения:
(1) оператор UPDATE модифицирует столбцы только из одной таблицы
(2) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(3) представление должно ссылаться на таблицу во фразе FROM
(4) представление не должно содержать функций агрегирования
(5) представление не должно содержать вычисляемых столбцов
Оператор DELETE НЕ поддерживает применение:
(1) фразы FROM
(2) операции WHERE
(3) операции JOIN
Резервные копии следует хранить:
(1) в каталоге базы данных для обеспечения устойчивости
(2) обязательно на одном физическом диске, что и сама база данных
(3) в надежном месте, лучше всего на другом диске
Мастер DTS Import Wizard позволяет импортировать данные:
(1) файлы данных XML
(2) документы Microsoft Word
(3) рабочих листов Microsoft Excel
(4) источников данных OLE DB и ODBC
(5) баз данных Microsoft Access и Microsoft FoxPro
(6) баз данных InterBase и FireBird
(7) соединений с другими экземплярами Microsoft SQL Server
Для запуска Query Analyzer из командной строки следует использовать команду:
(1) osql
(2) isql
(3) isqlw
Синтаксис оператора CREATE INDEX имеет вид:
(1) CREATE INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ WITH < index_option > [ ,...n] ] < index_option > :: = { PAD_INDEX | FILLFACTOR = fillfactor | IGNORE_DUP_KEY | DROP_EXISTING | STATISTICS_NORECOMPUTE | SORT_IN_TEMPDB }
(2) CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ ON filegroup ]
(3) CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ WITH < index_option > [ ,...n] ] [ ON filegroup ] < index_option > :: = { PAD_INDEX | FILLFACTOR = fillfactor | IGNORE_DUP_KEY | DROP_EXISTING | STATISTICS_NORECOMPUTE | SORT_IN_TEMPDB }
filesОкно подсказки описывает:
(1) действие, представляемое всем сценарием
(2) запрос в более наглядной форме
(3) действие, представляемое значком, а также такой цену выполнения ввода/вывода I/O, цену загрузки процессора, число строк в операции, итоговую цену операции и некоторые другие параметры
Команда администрирования базы данных DENY позволяет:
(1) установить определенные разрешения для объекта безопасности
(2) удалить определенное разрешение для объекта безопасности
(3) отключить определенные разрешения для объекта безопасности, и предотвратить наследование объектом разрешений через его членство в роли или группе
Временная таблица, имя которой содержит один знак решетки, имеет:
(1) имеет глобальную область действия
(2) временную область действия
(3) локальную область действия
DECLARE @x INT SET @x = NULL IF ( (@x = 0) OR (@x <> 0) ) PRINT 'True' ELSE PRINT 'Unknown' Данный сценарий выполняет действия:
(1) объявляет переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
(2) объявляет глобальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
(3) объявляет локальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'Unknown'
Под чувствительностью курсора следует понимать:
(1) способность осуществления прокрутки как вперед, так и назад, либо только вперед
(2) быстродействие курсора
(3) cпособность курсора отражать изменения в данных
Системные хранимые процедуры характеризуются тем, что:
(1) они представляют собой объект, являющийся частью базы данных, в которой он создан, и будет перемещаться вместе с ней
(2) хранятся в базе данных tempdb и заново создаются при открытии базы данных
(3) хранятся в главной базе данных. Все они начинаются с символов sp_
Триггер AFTER характеризуется тем, что:
(1) вызываются вместо команды, которой он назначен
(2) инициализируется до команды, которой он назначен
(3) вызывается после выполнения команды, которой он назначен
При использовании режима аутентификации Windows Authentication:
(1) система SQL Server получает запрос на аутентификацию, передает параметры аутентификации Windows NT/2000, и, если параметры совпадают, устанавливает доверительное соединение
(2) SQL Server 2000 получает идентификатор учетной записи login ID и пароль, которые затем сверяются со списком учетных записей системного администратора
(3) системный администратор предоставляет привилегии безопасности учетным записям и группам Windows NT/2000, программное обеспечение клиента Windows запрашивает у сервера доверительное соединение, которое будет предоставлено, только если Windows уже аутентифицировал пользователя
Скалярные пользовательские функции характеризуются тем, что:
(1) объединяют множество результатов в одну строку
(2) возвращают таблицу и не заменяют хранимые процедуры или представления, но в определенных ситуациях они могут предоставить более широкие возможности, которые трудно реализовать с помощью этих объектов
(3) возвращают скалярный (однозначный) результат, такой как строка или число
filesПути для хранения базы данных и журнала транзакций следует определять:
(1) на данном этапе нельзя определить местоположение файлов, указывается только дополнительные директории для резервного копирования
(2) в соответствующих полях окна (Database file location и Transaction log file location)
(3) в поле Database name. Остальные поля заполняются автоматически системой SQL Server 2000
В SQL Server существует множество типов данных. Тип данных float отличается от real:
(1) float - данные переменной длины, а real - фиксированной
(2) float - целое число, а real - с плавающей точкой
(3) диапазоном допустимых значений
filesНа данном этапе необходимо указать:
(1) базу данных и индекс для его просмотра и изменения
(2) базу данных, для которой будет создан индекс, он создастся для всех объектов
(3) базу данных и таблицу, для которой будет создан индекс
SQL Server напрямую устанавливает отношения:
(1) много-ко-многим
(2) один-к-одному
(3) один-ко-многим
(4) один-к-ничему
Функция LEN имеет синтаксис:
(1) LEN ( string_expression, count_elements )
(2) LEN ( string_expression ) : varchar
(3) LEN ( string_expression )
filesДанное окно позволяет указать:
(1) имя умолчания и его значение
(2) параметры проверочного ограничения для умолчания
(3) имя умолчания и его значение, а также некоторые другие параметры
Для регистрации экземпляра SQL Server необходимо знать информацию:
(1) предполагаемая нагрузка на сервер
(2) имя сервера
(3) тип аутентификации
(4) структура будущей базы данных
(5) имя пользователя и пароль
filesМожно изменить способ отображения:
(1) непосредственно всей базы данных, но каждой таблицы в отдельности представление менять нельзя
(2) только для каждой таблицы в отдельности
(3) для нескольких таблиц в диаграмме
Панель Diagram Pane позволяет:
(1) быстро изменять заголовки столбцов в запросе, задавать порядок, в котором будут отображаться строки, а также указывать условие отбора
(2) представить фактический оператор Transact-SQL, который будет генерировать запрос
(3) представлять запрос в виде, аналогичном диаграмме базы данных
Псевдоним определяет:
(1) оператор(или группу операторов) в ходе выполнения запроса
(2) строку в ходе выполнения запроса
(3) имя столбца в ходе выполнения запроса
SELECT stdID, stdName, stdType FROM STUDENTS ORDER BY stdName DESC Данный сценарий выполняет действия:
(1) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке возрастания
(2) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по всем полям в порядке убывания
(3) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке убывания
Внутреннее связывание возвращает:
(1) все строки из одной или более таблиц, независимо от того, имеют ли они соответствующие строки в другой таблице
(2) только те строки, для которых условие связывания имеет значение FALSE
(3) только те строки, для которых условие связывания имеет значение TRUE
SELECT DISTINCT PlantTypes.PlantType FROM Oils INNER JOIN PlantTypes ON Oils.PlantTypeID = PlantTypes.PlantTypeID Данный сценарий выполняет действия:
(1) возвращает все строки, несмотря на условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils и PlantTypes
(2) возвращает все значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
(3) возвращает отличающиеся значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
Создав представление, следует:
(1) проверить правильность его структуры
(2) использовать его с некоторыми ограничениями, по сравнению с другими объектами базы данных
(3) использовать его точно так же, как таблицу
Список столбцов в операторе INSERT:
(1) устанавливается по умолчанию
(2) является обязательным
(3) не является обязательным
UPDATE MyOils SET Sample = "Sample Field" Данный сценарий выполняет действия:
(1) добавляет новое значение в таблицу MyOils со значением столбца Sample = 'Sample Field'
(2) обновляет столбец Sample на 'Sample Field' в таблице MyOils
(3) обновляет значения столбца Sample на 'Sample Field' в таблице MyOils
DELETE FROM MyOils WHERE (OilName = 'Basil') Данный сценарий выполняет действия:
(1) удаляет столбец OilName из таблицы MyOils
(2) удаляет все строки из таблицы MyOils
(3) удаляет строки из таблицы MyOils, которые удовлетворяют условию(поле OilName имеет значение 'Basil')
Мастер Database Maintenance Plan Wizard может использоваться для:
(1) проверки целостности базы данных и синхронизации ее с резервной копией
(2) создания процесса обслуживания резервной копии базы данных
(3) создания расписания для задач по сопровождению, которые должны регулярно выполняться
filesНа данном этапе предполагается:
(1) выбрать время эскпортирования данных: немедленное или отложенное, а также настроить некоторые параметры
(2) определить формат выходного файла, настроить параметры, такие как тип файла, разделители, спецификатор и другие
(3) выбрать тип выходного файла(в данном случае Text File) и определить месторасположение файла
Query Analyzer первоначально отображает:
(1) два окна: Browser и Reference
(2) три окна: Object Browser, Analyzer и Query
(3) два окна: Object Browser и Query
Синтаксис оператора CREATE DATABASE имеет вид:
(1) CREATE DATABASE database_name [ ON [ < filespec > [ ,...n ] ] [ , < filegroup > [ ,...n ] ] ] < filespec > ::= [ PRIMARY ] ( [ NAME = logical_file_name , ] FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size | UNLIMITED } ] [ , FILEGROWTH = growth_increment ] ) [ ,...n ] < filegroup > ::= FILEGROUP filegroup_name < filespec > [ ,...n ]
(2) CREATE DATABASE database_name [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ]
(3) CREATE DATABASE database_name [ ON [ < filespec > [ ,...n ] ] [ , < filegroup > [ ,...n ] ] ] [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ] < filespec > ::= [ PRIMARY ] ( [ NAME = logical_file_name , ] FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size | UNLIMITED } ] [ , FILEGROWTH = growth_increment ] ) [ ,...n ] < filegroup > ::= FILEGROUP filegroup_name < filespec > [ ,...n ]
Трассировка определяет:
(1) последовательное выполнение запроса
(2) объекты, которые подверглись изменению в результате выполнения запроса
(3) анализ производительности запроса и определение исключительных ситуаций, которые происходят во время выполнения сценария T-SQL
Наивысший приоритет имеет операция:
(1) + (сложения)
(2) *
(3) + (положительное число)
SELECT OilName, LatinName INTO ##TempTable FROM Oils Данный сценарий выполняет действия:
(1) определяют новую виртуальную таблицу TempTable
(2) создает локальную временную таблицу ##TempTable
(3) создает глобальную временную таблицу ##TempTable
Синтаксис оператора CASE имеет вид:
(1) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] END
(2) CASE input_expression WHILE whILE_expression DO result_expression [ ...n ] [ ELSE else_result_expression ] END CASE
(3) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] [ ELSE else_result_expression ] END
Статические курсоры характеризуются тем, что:
(1) копируют в базу tempdb только те столбцы, которые уникально идентифицируют каждую строку
(2) ведут себя так, как если бы при каждом обращении к строке повторно выполнялся оператор SELECT
(3) делают как бы моментальный снимок данных, задаваемых оператором SELECT, и хранят их в базе данных tempdb
Синтаксис оператора EXECUTE имеет вид:
(1) [ [ EXEC [ UTE ] ] [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] { WITH RECOMPILE }
(2) [ [ EXEC [ UTE ] ] [ [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var ]
(3) [ [ EXEC [ UTE ] ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] [ WITH RECOMPILE ]
Синтаксис оператора CREATE TRIGGER имеет вид:
(1) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] sql_statement [ ...n ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE] } [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
(2) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE] } [ WITH APPEND ] [ AS ] [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] } ] sql_statement [ ...n ] } }
(3) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
filesДанная страница позволяет:
(1) определить предоставление временных ролей администрирования для базы данных
(2) выбрать роли безопасности, которые будут действовать для данной базы данных
(3) выбрать роли безопасности, которые будут действовать для данной учетной записи
Синтаксис оператора CREATE FUNCTION имеет вид:
(1) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type BEGIN function_body RETURN scalar_expression END
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) { RETURNS scalar_return_data_type } { WITH < function_option > [ [,] ...n] } { AS } BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option > [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
Возможности Enterprise Manager для работы с базами данных позволяют:
(1) создавать и конфигурировать базы данных
(2) управлять базами данных, за исключением удаления
(3) полностью управлять базами данных
filesДанный шаг позволяет определить:
(1) создание новых таблиц в различных базах данных
(2) создание новой базы данных с указанными таблицами
(3) добавление столбцов в таблицу и определение настроек для каждого столбца
Для создания первичного ключа необходимо:
(1) в окне редактирования колонок таблицы щелкнуть на кнопке New Column и в свойствах таблицы указать Primary Key
(2) в окне свойства таблицы щелкнуть на кнопке Primary Key, затем выбрать колонку и нажать Enter
(3) в окне редактирования колонок таблицы щелкнуть на кнопке Primary Key в панели инструментов конструктора таблиц
Возвратными называются отношения, при которых:
(1) одному столбцу соответствует несколько различных отношений
(2) таблица связывается сама с собой через отношение много-ко-многим
(3) таблица связывается сама с собой либо через отношение один-к-одному, либо через отношение один-ко-многим
Проверочные ограничения можно создать с помощью:
(1) мастера Create Constraint
(2) инструмента Constraint Tool
(3) диалогового окна Properties конструктора таблиц Table Designer
Правила представляют собой:
(1) объекты на уровне таблицы, которые могут быть применены только в пределах создаваемой таблицы
(2) объекты на уровне базы данных, которые могут быть применены к столбцам в нескольких таблицах. К столбцу может быть применено несколько проверочных ограничений и правил
(3) объекты на уровне базы данных, которые могут быть применены к столбцам в нескольких таблицах. К столбцу может быть применено несколько проверочных ограничений, но только одно правило
Существуют состояния экземпляра SQL Server:
(1) сервер приостановлен
(2) сервер остановлен
(3) сервер запущен
(4) ожидание запуска сервера
(5) обработка информации сервером
Диаграмма базы данных может использоваться для:
(1) создания новых баз данных
(2) добавления новых таблиц
(3) управления отношениями
(4) управления доступом к базе данных
(5) изменения существующих таблиц
Для изучения T-SQL следует воспользоваться:
(1) Grid Pane
(2) Diagram Pane
(3) SQL Pane
SELECT TOP 7 CustID AS [ID], OrderID, SaleDate, ShipDate, DATEDIFF(Day, SaleDate, ShipDate) AS [DaysToShip] FROM Sale WHERE ShipDate IS NOT NULL Данный сценарий определяет:
(1) отображение произвольных 7 строк запроса, в котором существуют 5 псевдонимов(ID, OrderID, SaleDate, ShipDate, DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(2) отображение первых 7% строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(3) отображение первых 7 строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
При изменении порядка следования имен столбцов во фразе ORDER BY произойдет следующее:
(1) сортировка будет происходить в порядке, указанном при перечислении столбцов во фразе SELECT
(2) порядок сортировки строк не изменится
(3) порядок их следования определяет результат – SQL Server будет сортировать строки по первому столбцу, затем по второму столбцу и т.д.
SELECT Oils.OilID, Oils.OilName, PlantParts.PlantPart FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
(2) возвращает только те строки, для которых условие левого внешнего связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(3) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
Использование ключевого слова GROUP BY позволяет:
(1) ограничивать строки, возвращаемые фразой SELECT
(2) разделять строки с разными значениями в столбце или в столбцах
(3) объединять строки с одинаковыми значениями в столбце или в столбцах, заданных во фразе, в одну строку
filesНа данном этапе предполагается выбрать:
(1) представление, которое будет удалено из запроса
(2) таблицы, которые будут включены в представление
(3) представление, которое будет включено в запрос
INSERT INTO Oils(OilName, LatinName, Sample) VALUES('InsertDefault', NULL, DEFAULT) Данный сценарий выполняет действия:
(1) добавляет 3 строки в таблицу Oils с одинаковыми значениями('InsertDefault', NULL, DEFAULT) для 3 столбцов(OilName, LatinName, Sample)
(2) добавляет строку в таблицу Oils со значениями('InsertDefault', 'NULL', 'DEFAULT') для 3 столбцов(OilName, LatinName, Sample)
(3) добавляет строку в таблицу Oils со значениями('InsertDefault', NULL-значение, значение по умолчанию) для 3 столбцов(OilName, LatinName, Sample)
Для обновления нескольких строк следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
(2) UPDATE таблица_или_представление FROM таблица_или_представление оператор_связывания условие_связывания WHERE (условие_ограничения)
(3) UPDATE таблица_или_представление SET объекты_изменения FROM таблица_или_представление оператор_связывания условие_связывания [WHERE (условие_ограничения)]
DELETE MyOils FROM PlantParts WHERE (MyOils.PlantPartID = PlantParts.PlantPartID) AND (PlantParts.PlantPart = 'Roots') Данный сценарий выполняет действия:
(1) удаляет все строки из таблицы MyOils
(2) удаляет строки из таблиц MyOils и PlanParts которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots')
(3) удаляет строки из таблицы MyOils, которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots') для таблицы PlanParts
filesПри таких настройках резервное копирование будет производиться:
(1) в каждое воскресенье
(2) в первое воскресенье относительно текущего дня
(3) по первым воскресеньям каждого месяца
Для отключения базы данных необходимо:
(1) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, указать на All Tasks и выбрать Manage Database. Выполнить необходимые действия в диалоговом окне(выбор действия и другие) и нажать ОК
(2) щелкнуть правой кнопкой мыши на папке Databases в дереве консоли Console Tree, указать на All Tasks и выберите Attach Database. Выполнить необходимые действия в диалоговом окне и нажмите ОК
(3) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, указать на All Tasks и выбрать Detach Database. Выполнить необходимые действия в диалоговом окне и нажать ОК
Темно красный цвет в окне Query анализатора запросов Query Analyzer определяет:
(1) ключевое слово
(2) системную таблицу
(3) хранимую процедуру
Синтаксис, для определения столбцов имеет вид:
(1) <имя_столбца>> <тип_данных> [ [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]] [ROWGUIDCOL] [<ограничение_для_столбца>[, <ограничение_для_столбца>...]]
(2) <имя_столбца>> <тип_данных> [NULL | NOT NULL] [ [DEFAULT <значение_по_умолчанию>] | [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]]
(3) <имя_столбца>> <тип_данных> [NULL | NOT NULL] [ [DEFAULT <значение_по_умолчанию>] | [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]] [ROWGUIDCOL] [<ограничение_для_столбца>[, <ограничение_для_столбца>...]]
Клиентская статистика обеспечивает:
(1) отображение последовательного выполнения запроса
(2) правильность выполнения запроса и обработку исключений
(3) информацию о количестве выполненных операторов T-SQL и выполненных строках, о сформированном трафике сети
Оператором комментария является:
(1) //
(2) '
(3) /* и */
(4) --
(5) <-- и -->
Переменные в SQL Server обозначаются:
(1) префиксом #
(2) суффиксом &
(3) префиксом @
Команда GOTO отличается от команд IF...ELSE и CASE тем, что:
(1) команда GOTO предоставляют более широкие возможности управления условными операторами
(2) команды IF...ELSE и CASE являются безусловными
(3) команда GOTO является безусловной
Синтаксис оператора DECLARE CURSOR имеет вид:
(1) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] FOR select_statement { FOR UPDATE [ OF column_name [ ,...n ] ] }
(2) DECLARE cursor_name CURSOR { LOCAL | GLOBAL } { FORWARD_ONLY | SCROLL } [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ]
(3) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ] FOR select_statement [ FOR UPDATE [ OF column_name [ ,...n ] ] ]
Синтаксис оператора CREATE PROCEDURE имеет вид:
(1) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] { FOR REPLICATION }
(2) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] { WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } } { FOR REPLICATION } [ AS sql_statement [ ...n ] ]
(3) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
Функция UPDATE предназначена для:
(1) определения, к какой операции предназначен триггер
(2) использования в триггере для определения, подвергалась ли изменению определенная строка
(3) использования в триггере для определения, подвергся ли изменению определенный столбец в строке
Роль System Administrators характеризуется тем, что:
(1) может управлять учетными записями и разрешениями CREATE DATABASE, а также читать журнал ошибок
(2) может управлять процессами, запущенными в SQL Server
(3) может выполнять любые действия в SQL Server
CREATE FUNCTION CustWithDiscount ( @MinDiscount DEC( 5, 3 ) ) RETURNS @CustWithDiscountTable TABLE ( ( CustID INT NOT NULL, CustName CHAR( 30 ) NOT NULL, CustDisc DEC( 5, 3 ) NULL, PRIMARY KEY( CustID ) ) BEGIN INSERT INTO @CustWithDiscountTable SELECT CustId, Name, CAST( Discount AS VARCHAR( 7 ) ) FROM Customer WHERE Discount >= @MinDiscount RETURN END Данный сценарий выполняет действия:
(1) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
(2) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе КАК НАБОР ОДНОСВЯЗАННЫХ ТАБЛИЦ
(3) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкции INSERT, UPDATE и DELETE, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
Для создания новой базы данных необходимо:
(1) выделите базу данных в дереве консоли Console Tree и нажмите кнопку Enter, затем щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, затем выбрать Create Database Wizard и следовать появляющимся инструкциям
(2) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, затем выбрать Create Database Wizard и следовать появляющимся инструкциям
(3) щелкнуть на кнопке Wizard, выбрать Create Database Wizard в разделе Databases, затем следовать появляющимся инструкциям
Значение NULL используется для:
(1) указание на редактируемое в данный момент поле
(2) определения значения 0 для нечисловых полей
(3) указания что значение либо отсутствует, либо не существует
Применение уникального индекса обеспечивает, что:
(1) данные по выбранным строкам/столбцам не будут иметь одинаковых значений
(2) никакие два столбца в таблице не могут содержать дублирующихся данных для строки или строк, заданных в индексе
(3) никакие две строки в таблице не могут содержать дублирующихся данных для столбца или столбцов, заданных в индексе
filesДанное окно позволяет:
(1) управлять проверочными ограничениями
(2) управлять индексами и ключами
(3) создавать, удалять и управлять отношениями
Для изменения проверочных ограничений необходимо:
(1) использовать мастер Update Constraints
(2) использовать инструмент Constraint Tool
(3) использовать диалоговое окно Properties конструктора таблиц Table Designer
filesДанное окно позволяет указать:
(1) имя, текст и таблицы, для которых будет действовать правило
(2) имя, текст и месторасположение правила в базе данных
(3) имя и текст правила, а также некоторые другие параметры
Объект Database в дереве консоли Enterprise Manager представляет собой:
(1) набор графических инструментов и программных объектов для управления SQL Server
(2) утилиты для сопровождения метаданных для баз данных
(3) коллекцию таблиц и других элементов, которые хранят определенный набор структурированных данных
Если вы хотите создать таблицу в окне Database Diagram, то следует:
(1) перетащить поле из таблицы первичного ключа в окно Create New Table и установить необходимые параметры
(2) использовать мастер Create Table Wizard
(3) щелкнуть на кнопке New Table в панели инструментов Database Diagram, ввести имя таблицы, затем определить столбцы и нажать на кнопку Save
Для редактирования строки в таблице необходимо:
(1) ввести новые значения для строки, отмеченной значком Edit в конструкторе запроса и щелкнуть на любой другой строке для сохранения
(2) щелкнуть на кнопке Diagram Pane в панели инструментов конструктора запросов и произвести необходимые изменения
(3) изменить необходимые значения для строк в конструкторе запросов Query Designer и щелкнуть на любой другой строке для сохранения изменений
Вычисляемый столбец определяет:
(1) столбец в таблице, который используется для нахождения различных параметров
(2) информацию в столбце, которая вычисляется на основе других таблиц в базе данных
(3) информацию в столбце, которая вычисляется на основе исходных данных, функций SQL Server или любой их комбинации
Фраза WHERE является:
(1) НЕобязательным компонентом многих операторов T-SQL, таких как SELECT, UNION, CREATE TABLE и других
(2) обязательным компонентом оператора SELECT
(3) НЕобязательным компонентом оператора SELECT
SELECT Oils.OilID, Oils.OilName, Odors.Odor FROM Oils INNER JOIN OilOdors ON Oils.OilID = OilOdors.OilID INNER JOIN Odors ON OilOdors.OdorID = Odors.OdorID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условия связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение FALSE
(2) возвращает только те строки, для которых условия полного внешнего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
(3) возвращает только те строки, для которых условия внутреннего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
SELECT PlantParts.PlantPart, Count(Oils.OilName) AS [NumberOfOils] FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID GROUP BY PlantParts.PlantPart Данный сценарий выполняет действия:
(1) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
(2) возвращает количество элементов PlanPart для каждого типа OilName, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(3) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
Для изменения представления следует использовать:
(1) только удаление представления и создание нового с необходимыми параметрами
(2) утилиту Update View
(3) встроенные средства Enterprise Manager
Для вставки нескольких строк следует использовать следующий синтаксис оператора INSERT:
(1) INSERT INTO таблица_или_представление [(список_столбцов)] FROM таблица_или_представление
(2) INSERT [INTO] таблица_или_представление [(список_столбцов)] VALUES (список_значений)
(3) INSERT INTO таблица_или_представление [(список_столбцов)] SELECT [(список_столбцов) FROM таблица_или_представление [WHERE (условие)]
UPDATE MyOils SET MyOils.PlantPartID = Oils.PlantPartID FROM MyOils INNER JOIN Oils ON MyOils.OilName = Oils.OilName Данный сценарий выполняет действия:
(1) модифицирует значения в таблице MyOils, при этом действие фразы FROM не учитывается, так как существует связывание MyOils.PlantPartID = Oils.PlantPartID
(2) модифицирует значения в таблице Oils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы MyOils
(3) модифицирует значения в таблице MyOils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы Oils
Оператор TRUNCATE TABLE, отличается от оператора DELETE тем, что:
(1) оператор TRUNCATE TABLE обладает большей функциональностью, чем оператор DELETE
(2) оператор DELETE не записывается в журнал транзакций
(3) оператор TRUNCATE TABLE не записывается в журнал транзакций
Для выполнения резервного копирования базы данных следует:
(1) отключить использование базы данных, остановить сервер, затем использовать мастер Backup/Restore Wizard
(2) выбрать базу данных в дереве консоли, отключить ее, затем использовать Query Designer для управления процессом через T-SQL
(3) выбрать базу данных в дереве консоли, выбрать мастера Backup Wizard и следовать затем его инструкциям
Мастер Copy Database Wizard предназначен для:
(1) копирования настроек и параметров базы данных, но не самих данных
(2) определения методов копирования хранимых процедур и триггеров
(3) копирования или перемещения базы данных из одного экземпляра SQL Server в другой
filesДанное окно позволяет:
(1) связывать запрос с таблицей
(2) определить область действия запроса
(3) изменить параметры редактора анализатора запросов Query Analyzer, такие как способ отображения, кодировка, сохранение табулирования и пробелов, и другие параметры
CREATE TABLE RelatedTable ( RelatedID smallint IDENTITY (1,1) PRIMARY KEY CLUSTERED, SimpleID smallint REFERENCES SimpleTable (SimpleID), RelatedDescription varchar(20) ) Данный сценарий выполняет действия:
(1) создает виртуальную таблицу RelatedTable с ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
(2) создает таблицу SimpleTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице RelatedID)
(3) создает таблицу RelatedTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
Мастер Index Tuning Wizard для анализа данных предоставляет опции:
(1) Manual Mode
(2) Keep All Existing Indexes
(3) Tuning Mode
(4) Save Current Mode
(5) Integral Mode
Побитные операции выполняются над:
(1) логическими значениями
(2) любыми числовыми значениями
(3) целочисленными значениями
DECLARE var1 int, @var2 text, @var3 ntext В данном сценарии допущена ошибка:
(1) все переменные обозначаются префиксом @(у переменной var1 нет префикса)
(2) все переменные обозначаются БЕЗ каких-либо префиксов (у переменных var2 и var3 есть префикс @)
(3) не допускается использование типа ntext
(4) не допускается использование более двух переменных
(5) не допускается использование типа text
Синтаксис оператора WHILE имеет вид:
(1) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ]
(2) WHILE Boolean_expression { sql_statement | statement_block } { BREAK } { sql_statement | statement_block } { CONTINUE }
(3) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ] { sql_statement | statement_block } [ CONTINUE ]
DECLARE @CustId INT DECLARE @CustName VARCHAR( 30 ) DECLARE CustCursor CURSOR FOR SELECT CustId, Name FROM Customer ORDER BY CustId FOR READ ONLY OPEN CustCursor WHILE (0 = 0) BEGIN FETCH NEXT FROM CustCursor INTO @CustId, @CustName IF ( @@FETCH_STATUS <> 0 ) BREAK PRINT CAST ( @CustId AS VARCHAR(IO) ) + ' ' + @CustName END CLOSE CustCursor DEALLOCATE CustCursor Данный сценарий выполняет действия:
(1) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в НОВЫЙ НАБОР СТРОК. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в ТОТ ЖЕ НАБОР СТРОК до тех пор, пока таблица не будет прочитана до конца
(2) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
(3) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR результирующий набор строк инструкции SELECT НЕ создается. Он создается при выполнении инструкции OPEN. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
CREATE PROCEDURE InputSP @OilName char(50) AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) определяет хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет запрос со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
(2) создает хранимую процедуру InputSP, определяет входной параметр @OilName. Результатом выполнения хранимой процедуры будет выборка строк со столбцом OilName, где входной параметр @OilName отличен от OilName из таблицы Oils
(3) создает хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
CREATE TRIGGER TrackCustomerUpdates ON AppDta.dbo.Customer FOR INSERT, UPDATE, DELETE AS DECLARE @InsertedCount INT DECLARE @DeletedCount INT SET @InsertedCount = ( SELECT COUNT (*) FROM INSERTED ) SET @DeletedCount = ( SELECT COUNT(*) FROM DELETED ) IF ( @InsertedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, CASE WHEN ( @DeletedCount > 0 ) THEN 'Update' ELSE 'Insert' END, CURRENT_USER, CURRENT_TIMESTAMP FROM INSERTED END ELSE IF ( @DeletedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, 'Delete', CURRENT_USER, CURRENT_TIMESTAMP FROM DELETED END Данный сценарий выполняет действия:
(1) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция UPDATE обработала ВСЕ строки. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(2) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(3) временная таблица INSERTED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица DELETED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица INSERTED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
filesОпция Deny access to the server позволяет:
(1) предоставить доступ к серверу
(2) запретить использование сервера
(3) запретить доступ для индивидуального пользователя или группы к серверу
Оператор CREATE FUNCTION поддерживает создание различных типов табличных функций:
(1) объединяющих
(2) дискретных
(3) подставляемых
(4) многоисполняемых
(5) многооператорных
При создании базы данных определять процент увеличения размера файла данных следует, исходя из:
(1) настроек, предлагаемых Enterprise Manager
(2) настроек Windows
(3) загруженности сервера SQL Server
Глобальный уникальный идентификатор (GUID) представляет собой:
(1) 8-байтное уникальное значение – ни один другой в мире компьютер не будет генерировать это значение
(2) 16-байтное уникальное значение – ни один другой компьютер в локальной сети не будет генерировать это значение
(3) 16-байтное уникальное значение – ни один другой в мире компьютер не будет генерировать это значение
Для изменения индексов следует использовать:
(1) мастер Update Index
(2) удаление индекса, а затем создание нового с измененными настройками
(3) диалоговое окно Properties конструктора таблиц Table Designer
При необходимости изменения отношения, следует:
(1) сначала удалить отношение, затем создать новое с необходимыми настройками
(2) использовать пункт меню Update Relationship панели инструментов
(3) использовать вкладку Relationships диалогового окна Properties конструктора таблиц
Для создания проверочного ограничения необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, нажать кнопку Constraints, выделить проверочное ограничение, нажать New и на основе существующего ограничения создать новое
(2) открыть инструмент Constraint Create Tool, нажать New и ввести выражение для проверочного ограничения
(3) открыть конструктор таблиц Table Designer для таблицы, нажать кнопку Constraints, нажать New и ввести выражение для проверочного ограничения
Пользовательские типы данных определяют:
(1) данные, которые непосредственно используются при описании таблицы
(2) объекты баз данных, которые указывают на умолчания и ограничения
(3) данные, которые задаются на основе любых внутренних типов данных SQL Server и содержат указание длины столбца
Системная база данных Master предназначена для:
(1) временного сохранения данных
(2) использования SQL Server Agent для составления расписания сопровождения задач, таких как оповещения и задания, и регистрации событий
(3) записи всей информации, необходимой для управления системы SQL Server, включая учетную запись пользователя
Для добавления столбца в таблицу в окне Database Diagram следует:
(1) щелкнуть на кнопке Add Column, ввести имя столбца и нажать ОК
(2) щелкнуть правой кнопкой мыши на таблице и выбрать Add New из контекстного меню
(3) отобразить таблицу в стандартном представлении и добавить новую спецификацию столбца в таблицу
Для управления панелью Grid Pane необходимо:
(1) вызвать Panels Viewer из панели инструментов и выбрать необходимую панель
(2) в главном меню программы выбрать Panels - Show - Grid Pane
(3) щелкнуть на кнопке Grid Pane в панели инструментов конструктора запросов
Использование фразы TOP n позволяет:
(1) задать определенное количество строк запроса в процентах
(2) задать определенное количество столбцов запроса
(3) задать определенное количество строк запроса
Оператор LIKE позволяет:
(1) задавать диапазон значений
(2) задавать множество, в котором содержатся значения
(3) указывать значения с использованием символов замещения
Внешнее связывание определяет:
(1) только те строки, для которых условие связывания имеет значение TRUE
(2) все строки из одной или более таблиц только если они имеют они соответствующие строки в другой таблице
(3) все строки из одной или более таблиц, независимо от того, имеют ли они соответствующие строки в другой таблице
Использование ключевого слова HAVING позволяет:
(1) объединять строки с одинаковыми значениями в столбце или в столбцах, заданных во фразе, в одну строку
(2) ограничивать строки, возвращаемые фразой SELECT
(3) ограничивать строки, возвращаемые фразой GROUP BY
При удалении представления следует:
(1) сначала удалить базовые таблицы, а затем и само представление посредствам рабочей панели Details Pane
(2) щелкнуть левой клавишей мыши на представлении в рабочей панели Details Pane, откроется пустое представление, а старое удалится
(3) щелкнуть правой кнопкой мыши на представлении в рабочей панели Details Pane и выбрать Delete. Подтвердить удаление в диалоговом окне Drop Objects
filesНа данном этапе предполагается:
(1) определить таблицу для удаления из запроса
(2) выбрать таблицу, для которой будет применена операция INSERT
(3) выбрать таблицу, которая будет добавлена в конструктор запросов Query Designer
Для модифицирования всех строк в таблице следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения FROM таблица_или_представление оператор_связывания условие_связывания [WHERE (условие_ограничения)]
(2) UPDATE таблица_или_представление SET объекты_изменения WHERE условие
(3) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
Правильный синтаксис оператора TRUNCATE TABLE имеет вид:
(1) TRUNCATE TABLE name { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
(2) TRUNCATE TABLE name [FROM источники_таблиц] [WHERE условие_отбора]
(3) TRUNCATE TABLE name
filesСвойство Append To The Backup Media определяет:
(1) добавление метаданных к существующим копиям
(2) замещение существующих резервных копий
(3) добавление новых резервных копий к существующим
filesПараметр Logins определяет:
(1) будут ли копироваться определенные пользователем сообщения об ошибках в новую базу данных
(2) будут ли копироваться общие хранимые процедуры из базы данных master в новую базу данных
(3) будут ли копироваться объекты типа Login в новую базу данных
Средство Object Browser в Query Analyzer позволяет:
(1) использовать пользовательские типы данных
(2) использовать встроенные типы данных и набор основных функций T-SQL, сгруппированных в категории
(3) отображать иерархическое представление баз данных на сервере, с которым происходит соединение, а также другие распространенные объекты, используемые при создании программ T-SQL
CREATE VIEW SimpleView AS SELECT Related, SimpleDescription, RelatedDescription FROM RelatedTable INNER JOIN SimpleTable ON RelatedTable.SimpleID = SimpleTable.SimpleID Данный сценарий выполняет действия:
(1) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие левого внешнего связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
(2) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение FALSE
(3) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
filesДанное окно определяет:
(1) свойства индексов для каждой таблицы
(2) параметры настройки таблиц и представлений для работы с индексами
(3) параметры настройки индексов
Функция DATEDIFF возвращает:
(1) имя указанной единицы времени даты в виде строки
(2) имя указанной единицы времени даты в виде числа
(3) количество единиц времени, между двумя указанными датами
Глобальная переменная @@IDLE определяет:
(1) возвращает значение текущей опции SET
(2) число соединений или попыток соединения с момента последнего запуска сервера
(3) время, бездействия SQL Server с момента последнего запуска сервера
DECLARE @Count INT DECLARE @Limit INT SET @Count = 0 SET @Limit = 10 WHILE ( @Count < @Limit ) BEGIN PRINT CAST ( @Count AS VARCHAR(10) ) + ' iteration' SET @Count = @Count + 1 END Данный сценарий выполняет действия:
(1) объявляет две глобальные переменные SET@Count и SET@Limit, устанавливаются начальные значения для них, затем, с помощью цикла DECLARE, до тех пор пока @Limit < @Count выводится на экран значение @Limit
(2) объявляет две глобальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла SET, до тех пор пока @Count < @Limit выводится на экран значение @Count
(3) объявляет две локальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла WHILE, до тех пор пока @Count < @Limit выводится на экран значение @Count
Команда FETCH:
(1) объединяет строки курсора в новую таблицу или представление
(2) изменяет исходное значение во множестве модифицируемого курсора
(3) извлекает указанную строку из множества строк курсора
CREATE PROCEDURE DefaultSP @OilName char(50) = 'Fennel' AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char БЕЗ строки по умолчанию. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где @OilName = 'Fennel', другого варианта невозможно
(2) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет строка 'Fennel'
(3) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils, если же входной параметр не указан, то он автоматически становится равным 'Fennel'
CREATE TRIGGER TrackDiscountUpdates ON AppDta.dbo.Customer FOR UPDATE AS IF UPDATE( Discount ) INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, Discount, UpdUser, UpdDateTime ) SELECT CustId, 'Update', Discount, CURRENT_USER, СURRENT_TIMESTAMP FROM INSERTED ENDIF Данный сценарий выполняет действия:
(1) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится выборка строк таблицы
(2) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
(3) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.Customer, и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
Существуют возможности управления учетными записями с помощью Enterprise Manager:
(1) создание учетной записи
(2) изменение учетной записи
(3) удаление учетной записи
(4) изменение роли безопасности учетной записи
Синтаксис вызова скалярных функций имеет вид:
(1) имя_владельца.имя_функции(список_параметров, список возвращаемых значений)
(2) имя_функции([список_параметров])
(3) имя_владельца.имя_функции([список_параметров])
Наиболее гибким способом создания базы данных является:
(1) Client Query Editor
(2) Enterprise Manager
(3) T-SQL
SQL Server поддерживает виды символьных столбцов:
(1) переменной длины
(2) денежный формат символов
(3) фиксированной длины
(4) данные временной длины
(5) ссылки на объект символов
Для создания индекса первичного ключа необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, выбрать столбец или столбцы, которые составляют первичный ключ, а затем щелкнуть на кнопке Primary Key. После этого зайти в свойства таблицы и указать на выбранном столбце первичного ключа Create Index
(2) использовать мастер Create Index and Keys
(3) открыть конструктор таблиц Table Designer для таблицы, выбрать столбец или столбцы, которые составляют первичный ключ, а затем щелкнуть на кнопке Primary Key
Для создания отношения необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выберать отношение в списке Selected Relationship, затем выбрать другой столбец таблицы в качестве поля внешнего ключа
(2) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выбрать отношение в списке Selected Relationship и изменить свойство Relationship Name
(3) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, щелкнуть New и установить свойства отношения
filesВыбранные настройки определяют:
(1) имя таблицы: CK_DeleteMe, имя ограничения: Oils, длина столбца OilName > 2, НЕ проверять существующие данные при создании ограничения, использовать ограничение для репликации
(2) имя таблицы: CK_DeleteMe, имя ограничения: Oils, длина столбца OilName > 2, НЕ проверять существующие данные при создании ограничения, использовать ограничение для репликации, использовать ограничение для операций INSERT и UPDATE
(3) имя таблицы: Oils, имя ограничения: CK_DeleteMe, длина столбца OilName > 2, проверить существующие данные при создании ограничения, использовать ограничение для репликации, использовать ограничение для операций INSERT и UPDATE
filesДанное окно позволяет указать:
(1) параметры пользовательского типа данных, такие как имя, связь с таблицами и другими объектами базы данных и другие настройки
(2) параметры умолчания, такие как имя, ограничение и другие
(3) параметры пользовательского типа данных, такие как тип данных, длина, поддержка NULL-значений и другие
В базах данных SQL Server существуют объекты:
(1) Domain
(2) Filter
(3) Role
(4) Trigger
(5) User defined Function
Символ замещения [] соответствует:
(1) любой строки из нуля или более символов
(2) любому определенному символу, не содержащемуся в области или множестве
(3) любому определенному символу внутри области или множества
SELECT Oils.OilName, Properties.Property FROM Oils RIGHT OUTER JOIN OilProperties ON Oils.OilID = OilProperties.OilID INNER JOIN Properties ON OilProperties.PropertyID = Properties.PropertyID Данный сценарий выполняет действия:
(1) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение FALSE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
(2) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
(3) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы OilProperties, отвечающие условию значения из таблицы Oils
Синтаксис оператора ALTER PROCEDURE имеет вид:
(1) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]
(2) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] AS sql_statement [ ...n ]
(3) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
Функция агрегирования AVG возвращает:
(1) количество значений в коллекции, включая и нулевые
(2) статистическую вариацию значений в группе
(3) среднее значение из коллекции, игнорируя нулевые (NULL) значения
Синтаксис команды позиционного обновления имеет вид:
(1) UPDATE таблица_или_представление ( SET список_для_модификации )
(2) UPDATE таблица_или_представление [ SET список_для_модификации ] [ WHERE CURRENT OF курсор_или_переменная ]
(3) UPDATE таблица_или_представление SET список_для_модификации WHERE CURRENT OF курсор_или_переменная
CREATE PROCEDURE GetCustDiscount @CustId INT, @Discount DEC( 5, 3 ) OUTPUT AS SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId Данный сценарий выполняет действия:
(1) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются набор строк с указанными параметрами
(2) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
(3) создает хранимую процедуру GetCustDiscount, объявляется входной параметр @CustId и выходной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
CREATE TRIGGER CustomerDelete ON Customer INSTEAD OF DELETE AS SET NOCOUNT ON IF ( EXISTS ( SELECT * FROM DELETED JOIN Sale ON DELETED.CustId = Sale.CustId WHERE DATEDIFF( DAY, SaleDate, CURRENT_TIMESTAMP ) < 365 ) ) BEGIN RAISERROR( 'One or more customers have recent sales', 16, 1) RETURN END DELETE FROM Sale WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old sales', 16, 2 ) RETURN END DELETE FROM Customer WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old customers', 16, 3 ) RETURN END RETURN Данный сценарий выполняет действия:
(1) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, в случае неудачи, отменяются все изменения, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты
(2) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты и, в случае неудачи, отменяются все изменения
(3) проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются соответствующие строки таблицы Sale, т.к. все они устарели, удаляются клиенты и, в случае неудачи, отменяются все изменения
Наиболее правильным будет решение:
(1) назначать и удалять привилегии безопасности для отдельных пользователей
(2) создавать и удалять пользователей совместно с группами по мере необходимости
(3) добавлять и удалять пользователей из заранее созданных групп, имеющих специфический набор привилегий безопасности
CREATE FUNCTION CustDiscount ( @CustId INT ) RETURNS DEC( 5, 3 ) BEGIN DECLARE @Discount DEC( 5, 3 ) SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId ) RETURN @Discount END Данный сценарий выполняет действия:
(1) создается функция CustDiscount, определяется имя выходной переменной - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
(2) создается функция CustDiscount, определяется имя и тип выходной переменной - DEC( 5, 3 ). Возвращает переменную @CustId, т.е. Id определенного клиента
(3) создается функция CustDiscount, определяется тип выходного параметра - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
Для создания новой таблицы следует:
(1) выделить папку Database базы данных в дереве консоли Console Tree, затем нажать кнопку New
(2) задать свойства таблицы в окне создания базы данных и нажать клавишу New
(3) выделить папку Tables базы данных в дереве консоли Console Tree, затем нажать кнопку New
filesОпция Check existing data on creation позволяет:
(1) осуществлять отношения для репликаций
(2) осуществлять отношения для операций INSERT и UPDATE
(3) проверять существующие данные при создании отношения
Для связи умолчания со столбцом необходимо:
(1) перейти к папке User Defined Data Types базы данных, нажать New и установить свойства нового умолчания
(2) открыть диалоговое окно Bind Default Value To Column, щелкнув на Bind Columns в диалоговом окне Default Value Properties. Выбрать соответствующие поля в списке Unbound Columns и нажать кнопку Add
(3) открыть конструктор таблиц Table Designer для таблицы и выбрать умолчание из списка Default Value
Объект View базы данных SQL Server определяет:
(1) значение, автоматически присваемое самой системой, если пользователь не предоставил его
(2) набор команд T-SQL, принимающих параметры и возвращающих результат
(3) виртуальную таблицу, предоставляющую альтернативный метод просмотра информации в базе данных
Для объединения условий отбора следует:
(1) применять операторы IF..THEN...ELSE
(2) воспользоваться операцией UNION
(3) использовать логические операторы OR или AND
Объединения характеризуются тем, что:
(1) группируют результаты выполнения различных операторов в один набор строк
(2) позволяют объединять результаты выполнения нескольких запросов в один набор строк
(3) помещают результаты выполнения двух различных операторов SELECT в один набор строк
Для оператора ALTER COLUMN существуют ограничения. Стобец не может быть изменен, если он:
(1) имеет тип данных bigint, cursor или любой строковый тип
(2) используется в ограничении UNIQUE
(3) имеет тип данных text, image, ntext или timestamp
(4) может иметь NULL-значения
(5) используется в ограничении FOREIGN KEY REFERENCES
Функция метаданных INDEXPROPERTY возвращает:
(1) имя индексированного столбца по идентификаторам indexID и keyID
(2) значение свойства property
(3) информацию о свойстве property индекса index
Роль базы данных определяет:
(1) виртуального пользователя, создаваемого для непосредственного доступа к базе данных
(2) объект, который создается для доступа в базу данных
(3) виртуального пользователя, создаваемого для управления доступом в базу данных
Системная функция ISNUMERIC возвращает:
(1) определение, корректно ли данное выражение
(2) определение, является ли данное выражение нулем
(3) определение, является ли данное выражение числом
Роль базы данных Deny Data Writer характеризуется тем, что:
(1) может выполнять операторы языка описания данных DLL, но не может выдавать операторы GRANT, REVOKE, DENY
(2) может модифицировать данные из любой таблицы пользователя в базе данных
(3) может запрещать или отменять полномочия INSERT, UPDATE и DELETE для любых объектов базы данных
Утилита Enterprise Manager используется для:
(1) определения и выполнения всех административных задач SQL Server для каждого зарегистрированного сервера
(2) конфигурирования всех опции SQL Server для каждого зарегистрированного сервера
(3) конфигурирования структуры запросов и обработки исключений
(4) просмотра содержимого таблиц и представление их с помощью конструктора Query Designer
(5) импорта/экспорта баз данных и конфигурирования данного процесса
При внесении изменений в базу данных, в диаграммах:
(1) не отражаются внесенные изменения
(2) автоматически отражаются все внесенные изменения
(3) отражается лишь часть изменений, не касающаяся структуры базы данных
Для просмотра всех строк в таблице необходимо:
(1) использовать операторы T-SQL из Client SQL
(2) открыть конструктор запросов Query Designer через контекстное меню таблицы
(3) открыть конструктор запросов Query Designer с параметров -show_all
Для выбора всех столбцов таблицы оператор SELECT будет иметь вид:
(1) SELECT перечисление_всех_столбцов FROM имя_таблицы
(2) SELECT * FROM имя_таблицы
(3) SELECT * FROM имя_таблицы WHERE ALL
Фраза ORDER BY позволяет:
(1) определять порядок возврата столбцов
(2) задавать порядок, в котором будут возвращены строки
(3) задавать порядок сортировки строк
Структура фразы FROM имеет форму:
(1) FROM <таблица_или_представление> <оператор_связывания> ON <условие_связывания>
(2) FROM <таблица_или_представление> <оператор_связывания> <таблица_или_ предствление> ON <условие_связывания>
(3) FROM <таблица_или_представление> <оператор_связывания> ON <таблица_или_ предствление> <условие_связывания>
Для DISTINCT существует обратное по действию ключевое слово:
(1) COMMON
(2) ALL
(3) SEPARATE
Новая возможность, представленная в SQL Server 2000 позволяет:
(1) создавать представления
(2) создавать индекс для представления
(3) определять домен для представления
Каждый оператор INSERT может модифицировать:
(1) несколько таблиц или представлений одновременно
(2) только одну таблицу или представление
(3) множество таблиц, либо множество представлений
Синтаксис оператора UPDATE имеет вид:
(1) UPDATE { table_name WITH ( < table_hint_limited >[ ...n ] ) | view_name | rowset_function_limited } SET { column_name = { expression | DEFAULT | NULL } | @variable = expression | @variable = column = expression } [ ,...n ] ( WHERE < search_condition > ] )
(2) UPDATE { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } SET { column_name = { expression | DEFAULT | NULL } | @variable = expression | @variable = column = expression } [ ,...n ] { { [ FROM { < table_source > } [ ,...n ] ] [ WHERE < search_condition > ] } | [ WHERE CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } [ OPTION ( < query_hint > [ ,...n ] ) ]
(3) UPDATE { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ SET { column_name = { expression | DEFAULT | NULL } | @variable = expression | @variable = column = expression } [ ,...n ] ]
Правильный синтаксис оператора DELETE имеет вид:
(1) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ]
(2) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ] [ WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } ] [ OPTION ( < query_hint > [ ,...n ] ) ]
(3) DELETE { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
Создание полной резервной копии характеризуется тем, что:
(1) записывается только та информация, которая была изменена после полного последнего резервирования
(2) определяет точную копию базы данных на какой-либо момент времени
(3) дает возможность восстанавливать состояние базы данных на определенный момент времени
Data Transformation Services (DTS) определяет:
(1) сервис доступа к объектам базы данных: таблицам, представлениям, хранимым процедурам и др.
(2) набор графических инструментальных средств и программных объектов, который дает возможность импортировать и экспортировать данные, преобразовывать структуры данных и объединять данные из различных источников для их анализа и составления отчетов
(3) утилиту для быстрого и эффективного обновления и преобразования данных
Query Analyzer предоставляет:
(1) средства для администрирования запросов
(2) мощные средства для написания и отладки сложных наборов операторов T-SQL различных типов
(3) возможность проверки эффективности написанных запросов
Язык определения данных DDL предназначен для:
(1) создания и получения данных
(2) создания объектов в базе данных и для установки свойств и значений атрибутов самой базы данных
(3) управления доступом к средствам администрирования
Планы выполнения предназначены для:
(1) более удобного управления запросами
(2) графического отображения последовательного выполнения запроса SQL Server
(3) объединения нескольких запросов в один для улучшения производительности
К командам DDL относятся:
(1) SELECT
(2) CREATE
(3) DROP
(4) ALTER
(5) UPDATE
Для создания временной таблицы средствами T-SQL, следует:
(1) использовать стандартные операторы создания таблиц с условием, что имя временной таблицы начинается либо с @, либо с @@
(2) использовать стандартные операторы создания таблиц с условием, что имя временной таблицы начинается либо с #, либо с ##
(3) определять таблицы специальными средствами T-SQL
Синтаксис операторов IF...ELSE имеет вид:
(1) IF Boolean_expression { sql_statement | statement_block } ELSE { sql_statement | statement_block }
(2) IF Boolean_expression { sql_statement | statement_block } [ ELSE { sql_statement | statement_block } ]
(3) IF Boolean_expression THEN { sql_statement | statement_block } [ WHILE { sql_statement | statement_block } ]
Курсоры T-SQL создаются с помощью команды:
(1) CREATE CURSOR
(2) DECLARE CURSOR
(3) DECLARE VIRTUAL VIEW
Хранимые процедуры обладают преимуществами:
(1) хранимые процедуры являются объектами базы данных; они размещаются в файле базы данных и перемещаются вместе с файлом в случае отключения или репликации базы данных
(2) хранимые процедуры позволяют вам передавать данные процедуре для их обработки и принимать обратно от процедуры как данные, так и сформированный процедурой итоговый код
(3) хранимые процедуры работают напрямую с файлами базы данных
(4) способность работать с переменными обладают только хранимые процедуры
(5) хранимые процедуры представляются в оптимизированной форме, что дает возможность ускорить их выполнение
Триггеры характеризуются тем, что:
(1) SQL Server быстрее выполняет их при работе с данными
(2) SQL Server автоматически вызывает их при обращении к команде, для которой они определены
(3) имеют более широкую синтаксическую форму по сравнению с хранимыми процедурами
SQL Server может выполнять аутентификацию несколькими способами:
(1) Basic Authentication
(2) Windows Authentication
(3) SQL Server Authentication
(4) Client Authentication
Функция является детерминированной, если:
(1) она может возвращать различные значения при одном и том же заданном входном значении
(2) при одном и том же заданном входном значении она всегда возвращает один и тот же результат
(3) при различных входных значениях она всегда возвращает один и тот же результат
Журнал транзакций следует хранить:
(1) совместно с объектами базы данных, так как это обеспечивает наиболее высокую устойчивость
(2) в другом месте относительно местонахождения файла базы данных
(3) совместно с файлом базы данных
Сущность в описании базы данных в физической реализации соответствует:
(1) полю
(2) таблице
(3) экземпляру строки
SQL Server 2000 поддерживает различные типы индексов:
(1) кластерный
(2) ограничивающий
(3) проверочный
(4) некластерный
(5) дискретный
В отношении один-к-одному:
(1) каждая строка первой таблицы связана с нулем, одной или несколькими строками второй таблицы, а каждая строка второй таблицы может быть связана с нулем, одной или несколькими строками первой таблицы
(2) каждая строка таблицы связана с нулем или одной строкой другой таблицы
(3) каждая строка таблицы связана с нулем, одной или несколькими строками другой таблицы
Существуют формы целостности базы данных:
(1) целостность отношений
(2) целостность домена
(3) целостность независимых данных
(4) целостность сущности
(5) целостность хранимых процедур
Умолчания являются объектами на уровне:
(1) таблиц
(2) базы данных
(3) одного столбца
SQL Server поддерживает режимы аутентификации:
(1) MMC Authentication
(2) Windows Authentication
(3) SQL Server Authentication
(4) Client Network Authentication
filesНа данном этапе следует:
(1) создать специальные таблицы для функционирования диаграммы базы данных
(2) выбрать таблицы, которые будут включены в диаграмму базы данных
(3) выбрать таблицы, которые НЕ будут использоваться для построения диаграммы
filesС помощью данного окна можно:
(1) создавать новые таблицы и определять столбцы
(2) управлять строками в таблице
(3) определять состояние таблицы
Для отбора избранных столбцов оператор SELECT может иметь вид:
(1) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer WHERE Customer.CustID = Sale.CustID
(2) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
(3) SELECT * FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
Тип сортировки Descending определяет:
(1) сортировку по группам в таблице
(2) возвращение строк в порядке убывания
(3) возвращение строк в порядке возрастания
Чтобы сослаться на объекты, содержащие в свою очередь другие объекты, следует:
(1) указывать во фразе FROM объекты, к которым непосредственно будет применяться доступ
(2) добавить его имя после имени объекта
(3) указать его имя вначале описания структуры
filesДанное окно позволяет:
(1) определить представление будущей диаграммы
(2) установить свойства запроса, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
(3) установить свойства таблиц в запросе, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
Enterprise Manager предусматривает методы для создания представления:
(1) утилита View Design Tool
(2) мастер создания представления Create View Wizard
(3) команда New View
(4) команда Create Virtual Table
При использовании оператора INSERT для модификации представления следует учитывать ограничения:
(1) оператор INSERT модифицирует столбцы только из одной таблицы
(2) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(3) представление должно ссылаться на таблицу во фразе FROM
(4) представление не должно содержать функций агрегирования
(5) представление не должно содержать вычисляемых столбцов
При использовании оператора UPDATE для модификации представления следует учитывать ограничения:
(1) представление должно ссылаться на таблицу во фразе FROM
(2) оператор UPDATE модифицирует столбцы только из одной таблицы
(3) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(4) представление не должно содержать вычисляемых столбцов
(5) представление не должно содержать функций агрегирования
В операторе DELETE связывать таблицы следует путем использования фразы:
(1) JOIN
(2) WHERE
(3) SET
Для создания резервной копии следует использовать мастер:
(1) Create Database Backup/Restore Wizard
(2) Create Database Backup Wizard
(3) Create Database Wizard
filesНа данном этапе предполагается:
(1) создать новый источник данных на основе существующего
(2) выбрать источник данных для экспорта/импорта данных
(3) определить путь для экспорта данных
Для запуска Query Analyzer из Enterprise Manager следует:
(1) выбрать нужную базу данных, щелкнуть правой кнопкой мыши на любом объекте и выбрать Run Query Analyzer
(2) в дереве консоли Console Tree найти необходимую базу данных. В меню Tools выбрать SQL Query Analyzer. SQL Server откроет Query Analyzer и автоматически соединиться с сервером и необходимой базой данных
(3) щелкнуть левой кнопкой мыши в панели инструментов на SQL Query Analyzer, затем выбрать базу данных и нажать OK
Синтаксис оператора CREATE STATISTICS имеет вид:
(1) CREATE STATISTICS statistics_name [ WITH [ [ FULLSCAN | SAMPLE number { PERCENT | ROWS } ] [ , ] ] [ NORECOMPUTE ] ]
(2) CREATE STATISTICS statistics_name ON { table | view } ( column [ ,...n ] ) [ WITH [ [ FULLSCAN | SAMPLE number { PERCENT | ROWS } ] [ , ] ] [ NORECOMPUTE ] ]
(3) CREATE STATISTICS statistics_name ON { table | view } ( column [ ,...n ] )
filesОкно подсказки описывает:
(1) запрос в более наглядной форме
(2) действие, представляемое значком, а также такой цену выполнения ввода/вывода I/O, цену загрузки процессора, число строк в операции, итоговую цену операции и некоторые другие параметры
(3) действие, представляемое всем сценарием
Команда администрирования базы данных GRANT позволяет:
(1) отключить определенные разрешения для объекта безопасности, и предотвратить наследование объектом разрешений через его членство в роли или группе
(2) установить определенные разрешения для объекта безопасности
(3) управлять окружением SQL Server
Временная таблица, имя которой содержит два знака решетки, имеет:
(1) локальную область действия
(2) имеет глобальную область действия
(3) временную область действия
DECLARE @x INT SET @x = NULL IF ( (@x = 0) OR (@x <> 0) ) PRINT 'True' ELSE PRINT 'Unknown' Данный сценарий выполняет действия:
(1) объявляет глобальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
(2) объявляет локальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'Unknown'
(3) объявляет переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
Под прокруткой курсора следует понимать:
(1) cпособность курсора отражать изменения в данных
(2) способность осуществления прокрутки как вперед, так и назад, либо только вперед
(3) возможность обновления строк курсором
Пользовательские хранимые процедуры характеризуются тем, что:
(1) хранятся в главной базе данных. Все они начинаются с символов up_
(2) они представляют собой объект, являющийся частью базы данных, в которой он создан, и будет перемещаться вместе с ней
(3) хранятся в базе данных tempdb и заново создаются при открытии базы данных
Триггер INSTEAD OF характеризуется тем, что:
(1) вызывается после выполнения команды, которой он назначен
(2) вызываются вместо команды, которой он назначен
(3) инициализируется вместе с командой, которой он назначен
При использовании режима аутентификации SQL Server Authentication:
(1) системный администратор предоставляет привилегии безопасности учетным записям и группам Windows NT/2000, программное обеспечение клиента Windows запрашивает у сервера доверительное соединение, которое будет предоставлено, только если Windows уже аутентифицировал пользователя
(2) SQL Server 2000 получает идентификатор учетной записи login ID и пароль, которые затем сверяются со списком учетных записей системного администратора
(3) система SQL Server получает запрос на аутентификацию, передает параметры аутентификации Windows NT/2000, и, если параметры совпадают, устанавливает доверительное соединение
Табличные пользовательские функции характеризуются тем, что:
(1) возвращают скалярный (однозначный) результат, такой как строка или число
(2) возвращают таблицу и не заменяют хранимые процедуры или представления, но в определенных ситуациях они могут предоставить более широкие возможности, которые трудно реализовать с помощью этих объектов
(3) объединяют множество результатов в одну строку
filesГруппа New database default location определяет:
(1) местоположение по умолчанию для всех новых баз данных и журнала транзакций
(2) местоположение по умолчанию для текущей базы данных
(3) директории для доступа к системным базам данных
В SQL Server существует множество типов данных. Тип данных smallint отличается от tinyint тем, что:
(1) smallint имеет диапазон допустимых значений 0..255, а tinyint -2^15 .. 2^15-1
(2) tinyint имеет диапазон допустимых значений 0..255, а smallint -2^15 .. 2^15-1
(3) tinyint - десятичные числа с фиксированным количеством знаков до и после запятой, а smallint - целые числа 0..255
filesНа данном этапе необходимо указать:
(1) таблицы для включения их в индекс и тип сортировки (ASC или DESC)
(2) столбцы для которых будет создан индекс и тип сортировки (ASC или DESC)
(3) столбцы для которых никогда не будет создаваться индекс с выбранным типов сортировки (ASC или DESC)
SQL Server использует узловую структуру для реализации отношения:
(1) один-к-одному
(2) много-ко-многим
(3) один-ко-многим
Функция LEN предназначена для:
(1) определения количества столбцов в таблице
(2) определения количества символов в строке
(3) задания свойств столбцу
filesПараметр Default Value определяет:
(1) имя умолчания
(2) значение по умолчанию для столбца Sample
(3) типа данных значения по умолчанию
filesПри выборе пункта New SQL Server Registration появится:
(1) окно выбора доступа к базе данных
(2) окно мастера Register SQL Server Wizard
(3) программа настройки параметров подключения
Для удаления таблицы из диаграммы базы данных следует:
(1) щелкнуть на требуемой таблице в диаграмме базы данных и переопределить ее для другой диаграммы
(2) щелкнуть правой кнопкой мыши на требуемой таблице в диаграмме базы данных и выбрать Remove Table From Diagram из контекстного меню. SQL Server удалит таблицу из диаграммы
(3) удалить всю диаграмму базы данных, а затем создать новую с необходимыми настройками
Панель Grid Pane позволяет:
(1) представлять запрос в виде, аналогичном диаграмме базы данных
(2) быстро изменять заголовки столбцов в запросе, задавать порядок, в котором будут отображаться строки, а также указывать условие отбора
(3) представить фактический оператор Transact-SQL, который будет генерировать запрос
Псевдоним изменяет:
(1) имя столбца в таблице, но не в запросе
(2) имя столбца в запросе, но не в таблице
(3) имя столбца в базе данных в целом(в запросе и в таблице)
SELECT stdID, stdName, stdType FROM STUDENTS ORDER BY stdName ASC Данный сценарий выполняет действия:
(1) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке убывания
(2) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке возрастания
(3) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType без сортировки данных
Наиболее распространенной формой связывания является:
(1) внутреннее
(2) удаленное
(3) полное
(4) распределенное
(5) внешнее
SELECT DISTINCT PlantTypes.PlantType FROM Oils INNER JOIN PlantTypes ON Oils.PlantTypeID = PlantTypes.PlantTypeID Данный сценарий выполняет действия:
(1) возвращает все значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
(2) возвращает отличающиеся значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
(3) возвращает все строки, несмотря на условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils и PlantTypes
Если открыть View Designer для существующего представления, Enterprise Manager трактует его как:
(1) новый объект, отличный от виртуальной таблицы
(2) виртуальную таблицу
(3) временную таблицу, хранящейся в базе данных model
Если не указан список столбцов, оператор INSERT:
(1) должен включать значения для всех столбцов в таблице или представлении, порядок столбцов не имеет значения
(2) должен включать значения для всех столбцов в таблице или представлении, а порядок их должен соответствовать порядку столбцов в таблице или представлении
(3) не будет исполнен, появится ошибка
UPDATE MyOils SET Sample = "Sample Field" Данный сценарий выполняет действия:
(1) добавляет новое значение в таблицу MyOils со значением столбца Sample = 'Sample Field'
(2) обновляет значения столбца Sample на 'Sample Field' в таблице MyOils
(3) обновляет столбец Sample на 'Sample Field' в таблице MyOils
DELETE FROM MyOils WHERE (OilName = 'Basil') Данный сценарий выполняет действия:
(1) удаляет столбец OilName из таблицы MyOils
(2) удаляет строки из таблицы MyOils, которые удовлетворяют условию(поле OilName имеет значение 'Basil')
(3) удаляет все строки из таблицы MyOils
Мастер Database Maintenance Plan Wizard может использоваться для:
(1) проверки целостности базы данных и синхронизации ее с резервной копией
(2) создания расписания для задач по сопровождению, которые должны регулярно выполняться
(3) создания процесса обслуживания резервной копии базы данных
filesНа данном этапе предполагается:
(1) выбрать тип выходного файла(в данном случае Text File) и определить месторасположение файла
(2) определить формат выходного файла, настроить параметры, такие как тип файла, разделители, спецификатор и другие
(3) выбрать время эскпортирования данных: немедленное или отложенное, а также настроить некоторые параметры
Окно Query утилиты Query Analyzer предназначено для:
(1) создания структуры запроса
(2) более гибкого и мощного инструмента редактирования запроса
(3) определения узких мест в сценариях
Синтаксис оператора CREATE FUNCTION имеет вид:
(1) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option> [ [,] ...n] ] AS
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option> [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) BEGIN function_body RETURN scalar_expression END
Для выполнения трассировки сервера в SQL Server существуют средства:
(1) Client Manager
(2) Execution Plan Pane
(3) Query Editor Plus
(4) SQL Profiler
(5) Client Statistics Pane
Одинаковый приоритет имеют операции:
(1) - (вычитания)
(2) + (сложения)
(3) + (конкатенации)
SELECT OilName, LatinName INTO #TempTable FROM Oils Данный сценарий выполняет действия:
(1) определяют новую виртуальную таблицу TempTable
(2) создает локальную временную таблицу #TempTable
(3) создает глобальную временную таблицу #TempTable
Синтаксис оператора CASE имеет вид:
(1) CASE input_expression WHILE whILE_expression DO result_expression [ ...n ] [ ELSE else_result_expression ] END CASE
(2) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] [ ELSE else_result_expression ] END
(3) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] END
Ключевые курсоры характеризуются тем, что:
(1) делают как бы моментальный снимок данных, задаваемых оператором SELECT, и хранят их в базе данных tempdb
(2) копируют в базу tempdb только те столбцы, которые уникально идентифицируют каждую строку
(3) допускают только чтение. Эти виды курсора объявляются с использованием ключевого слова FAST_FORWARD, и чаще всего их называют "пожарными" курсорами
Синтаксис оператора EXECUTE имеет вид:
(1) [ [ EXEC [ UTE ] ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ WITH RECOMPILE ] [ ,..n ]
(2) [ [ EXEC [ UTE ] ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] [ WITH RECOMPILE ]
(3) [ EXECUTE ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ]
Синтаксис оператора CREATE TRIGGER имеет вид:
(1) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] sql_statement [ ...n ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
(2) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
(3) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ AS ] [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] } ] sql_statement [ ...n ] } }
filesДанная страница позволяет:
(1) определить временные роли безопасности, которые будут распространяться на выбранные базы данных
(2) выбрать базу данных, к которой данная учетная запись будет иметь доступ
(3) выбрать роли безопасности, которые будут действовать для данной учетной записи
Синтаксис оператора CREATE FUNCTION имеет вид:
(1) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type BEGIN function_body RETURN scalar_expression END
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option > [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) { RETURNS scalar_return_data_type } { WITH < function_option > [ [,] ...n] } { AS } BEGIN function_body RETURN scalar_expression END
С помощью Enterprise Manager НЕ может быть выполнена операция:
(1) удаление базы данных
(2) переименование базы данных
(3) изменение размера прироста файлов
filesСвойство precision позволяет определить:
(1) количество знаков после запятой
(2) общее количество знаков числа
(3) количество знаков до запятой
filesДанное окно позволяет:
(1) только просматривать свойства индексов и ключей таблицы
(2) просматривать и изменять свойства индексов и ключей таблицы
(3) определять столбцы таблицы и назначать индексы
Возвратные отношения применяются для реализации:
(1) линейных структур
(2) иерархий
(3) узловых структур
filesДанное окно позволяет:
(1) создавать новые столбцы совместно с проверочными ограничениями
(2) определить параметры проверочного ограничения
(3) определить любые типы ограничений
К пользовательскому типу данных может быть применено:
(1) проверочное ограничение
(2) правило
(3) уникальное ограничение
Дерево консоли Console Tree в Enterprise Manager предназначено для:
(1) обеспечения безопасности данных
(2) просмотра и конфигурирования баз данных
(3) импорта/экспорта данных
SQL Server применяет изменения схемы базы данных:
(1) сразу же после внесения каких-либо изменений в диаграмму
(2) только после сохранения диаграммы
(3) через определенный промежуток времени
(4) SQL Server не изменяет схему базы данных. Диаграммы существуют только для удобного графического просмотра базы данных
Для изучения T-SQL следует воспользоваться:
(1) Diagram Pane
(2) SQL Pane
(3) Grid Pane
SELECT TOP 7 CustID AS [ID], OrderID, SaleDate, ShipDate, DATEDIFF(Day, SaleDate, ShipDate) AS [DaysToShip] FROM Sale WHERE ShipDate IS NOT NULL Данный сценарий определяет:
(1) отображение первых 7% строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(2) отображение первых 7 строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(3) отображение произвольных 7 строк запроса, в котором существуют 5 псевдонимов(ID, OrderID, SaleDate, ShipDate, DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
При изменении порядка следования имен столбцов во фразе ORDER BY произойдет следующее:
(1) порядок сортировки строк не изменится
(2) порядок их следования определяет результат – SQL Server будет сортировать строки по первому столбцу, затем по второму столбцу и т.д.
(3) сортировка будет происходить в порядке, указанном при перечислении столбцов во фразе SELECT
SELECT Oils.OilID, Oils.OilName, PlantParts.PlantPart FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условие левого внешнего связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(2) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(3) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
Фраза GROUP BY чаще всего используется совместно с:
(1) хранимой процедурой
(2) функцией агрегирования
(3) операцией объединения
filesНа данном этапе предполагается выбрать:
(1) таблицы, которые будут включены в представление
(2) представление, которое будет включено в запрос
(3) представление, которое будет удалено из запроса
INSERT INTO Oils(OilName, LatinName, Sample) VALUES('InsertDefault', NULL, DEFAULT) Данный сценарий выполняет действия:
(1) добавляет 3 строки в таблицу Oils с одинаковыми значениями('InsertDefault', NULL, DEFAULT) для 3 столбцов(OilName, LatinName, Sample)
(2) добавляет строку в таблицу Oils со значениями('InsertDefault', NULL-значение, значение по умолчанию) для 3 столбцов(OilName, LatinName, Sample)
(3) добавляет строку в таблицу Oils со значениями('InsertDefault', 'NULL', 'DEFAULT') для 3 столбцов(OilName, LatinName, Sample)
Для обновления нескольких строк следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
(2) UPDATE таблица_или_представление SET объекты_изменения FROM таблица_или_представление оператор_связывания условие_связывания [WHERE (условие_ограничения)]
(3) UPDATE таблица_или_представление FROM таблица_или_представление оператор_связывания условие_связывания WHERE (условие_ограничения)
DELETE MyOils FROM PlantParts WHERE (MyOils.PlantPartID = PlantParts.PlantPartID) AND (PlantParts.PlantPart = 'Roots') Данный сценарий выполняет действия:
(1) удаляет строки из таблиц MyOils и PlanParts которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots')
(2) удаляет строки из таблицы MyOils, которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots') для таблицы PlanParts
(3) удаляет все строки из таблицы MyOils
filesТакие установки соответствуют действиям:
(1) сохранять резервную копию базы данных на внешнем накопителе по первым воскресеньям каждого месяца в 2 часа ночи
(2) сохранять резервную копию базы данных на диске по первым воскресеньям каждого месяца в 2 часа ночи
(3) сохранять резервную копию базы данных на диске без проверки целостности по первым воскресеньям каждого месяца в 2 часа ночи
Для подключения базы данных необходимо:
(1) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, указать на All Tasks и выбрать Detach Database. Выполнить необходимые действия в диалоговом окне и нажать ОК
(2) щелкнуть правой кнопкой мыши на папке Databases в дереве консоли Console Tree, указать на All Tasks и выберите Attach Database. Выполнить необходимые действия в диалоговом окне и нажмите ОК
(3) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, указать на All Tasks и выбрать Manage Database. Выполнить необходимые действия в диалоговом окне(выбор действия и другие) и нажать ОК
Синий цвет в окне Query анализатора запросов Query Analyzer определяет:
(1) хранимую процедуру
(2) ключевое слово
(3) системную таблицу
Синтаксис на ограничения столбцов имеет вид:
(1) [CONSTRAINT <имя_ограничения>] [ [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] | [CHECK [NOT FOR REPLICATION] (<логическое выражение>)] ]
(2) [CONSTRAINT <имя_ограничения>] [ [PRIMARY KEY | UNIQUE] [CLUSTERED | NONCLUSTERED] | [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] | [CHECK [NOT FOR REPLICATION] (<логическое выражение>)] ]
(3) [CONSTRAINT <имя_ограничения>] [ [PRIMARY KEY | UNIQUE] [CLUSTERED | NONCLUSTERED] | [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] ]
Информация в панели клиентской статистики делится на разделы:
(1) Network Statistics
(2) Intermittent Statistics
(3) Application Profile Statistics
(4) Time Statistics
(5) Full Stat
Оператор % предназначен для:
(1) деления
(2) нахождения остатка от деления
(3) вычитания
Синтаксис оператора DECLARE имеет вид:
(1) DECLARE {{ @local_variable data_type } } [ ,...n]
(2) DECLARE {{ @local_variable data_type } | { @cursor_variable_name CURSOR } | { table_type_definition } } [ ,...n] < table_type_definition > ::= TABLE ( { < column_definition > | < table_constraint > } [ ,... ] ) < column_definition > ::= column_name scalar_data_type [ COLLATE collation_name ] [ [ DEFAULT constant_expression ] | IDENTITY [ ( seed, increment ) ] ] [ ROWGUIDCOL ] [ < column_constraint > ] < column_constraint > ::= { [ NULL | NOT NULL ] | [ PRIMARY KEY | UNIQUE ] | CHECK ( logical_expression ) } < table_constraint > ::= { { PRIMARY KEY | UNIQUE } ( column_name [ ,... ] ) | CHECK ( search_condition ) }
(3) DECLARE {{ @local_variable data_type } | { @cursor_variable_name CURSOR } | { table_type_definition } } [ ,...n] < table_type_definition > ::= TABLE ( { < column_definition > [ ,... ] ) < column_definition > ::= column_name scalar_data_type [ COLLATE collation_name ] [ [ DEFAULT constant_expression ] | IDENTITY [ ( seed, increment ) ] ] [ ROWGUIDCOL ] [ < column_constraint > ] < column_constraint > ::= { [ NULL | NOT NULL ] | [ PRIMARY KEY | UNIQUE ] | CHECK ( logical_expression ) }
PRINT 'I get executed' GOTO Point1 PRINT 'I get executed - YES!' Point1: PRINT 'I get executed too' Данный сценарий выполняет действия:
(1) на экран выводятся сообщения: I get executed, затем I get executed too и только потом I get executed - YES!
(2) на экран выводятся сообщения: I get executed, затем I get executed too
(3) на экран выводятся сообщения: I get executed, затем I get executed - YES! и только потом I get executed too
Синтаксис оператора DECLARE CURSOR имеет вид:
(1) DECLARE cursor_name CURSOR { LOCAL | GLOBAL } { FORWARD_ONLY | SCROLL } [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ]
(2) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ] FOR select_statement [ FOR UPDATE [ OF column_name [ ,...n ] ] ]
(3) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] FOR select_statement { FOR UPDATE [ OF column_name [ ,...n ] ] }
Синтаксис оператора CREATE PROCEDURE имеет вид:
(1) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] { WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } } { FOR REPLICATION } [ AS sql_statement [ ...n ] ]
(2) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
(3) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] { FOR REPLICATION }
Функция UPDATE предназначена для:
(1) определения, к какой операции предназначен триггер
(2) использования в триггере для определения, подвергся ли изменению определенный столбец в строке
(3) использования в триггере для определения, подвергалась ли изменению определенная строка
Роль Security Administrators характеризуется тем, что:
(1) может выполнять любые действия в SQL Server
(2) может управлять учетными записями и разрешениями CREATE DATABASE, а также читать журнал ошибок
(3) может создавать, изменять или прекращать работу баз данных
CREATE FUNCTION CustWithDiscount ( @MinDiscount DEC( 5, 3 ) ) RETURNS @CustWithDiscountTable TABLE ( ( CustID INT NOT NULL, CustName CHAR( 30 ) NOT NULL, CustDisc DEC( 5, 3 ) NULL, PRIMARY KEY( CustID ) ) BEGIN INSERT INTO @CustWithDiscountTable SELECT CustId, Name, CAST( Discount AS VARCHAR( 7 ) ) FROM Customer WHERE Discount >= @MinDiscount RETURN END Данный сценарий выполняет действия:
(1) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе КАК НАБОР ОДНОСВЯЗАННЫХ ТАБЛИЦ
(2) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкции INSERT, UPDATE и DELETE, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
(3) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
Для установки свойств базы данных необходимо:
(1) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, затем выбрать Create Database Wizard и следовать появляющимся инструкциям по настройке базы данных
(2) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, затем выберите Properties
(3) установка свойств базы данных производится только при ее создании. Для изменения свойств необходимо удалить базу данных, затем заново ее создать при необходимых настройках
filesСвойство identity позволяет определить:
(1) что значение либо отсутствует, либо не существует
(2) значение, которое уникально идентифицирует каждую строку. Выбранный тип данных задает природу данных, содержащихся в столбце
(3) проверочное ограничение на столбец
Индексы первичного ключа всегда являются:
(1) внешними
(2) уникальными
(3) дискретными
filesОпция Cascade Update Related Fields позволяет:
(1) использовать каскадные удаления
(2) использовать каскадные изменения
(3) осуществлять отношения для операций INSERT и UPDATE
Для изменения проверочных ограничений необходимо:
(1) использовать инструмент Constraint Create/Update Tool
(2) использовать диалоговое окно Properties конструктора таблиц Table Designer
(3) прежде удалить ограничение, а затем создавать новое с помощью диалогового окна Properties конструктора таблиц Table Designer
filesДанное окно позволяет:
(1) связывать правила с базами данных
(2) связывать правила со столбцами для таблицы
(3) указывать месторасположение правил относительно таблиц баз данных
Объект Management в дереве консоли Enterprise Manager представляет собой:
(1) коллекцию таблиц и других элементов, которые хранят определенный набор структурированных данных
(2) набор графических инструментов и программных объектов для управления SQL Server
(3) утилиты для сопровождения метаданных для баз данных
Если вы хотите создать отношение в окне Database Diagram, то следует:
(1) воспользоваться мастером Create New Relationship
(2) перетащить поле из таблицы первичного ключа и поместить его в таблицу внешнего ключа. Установить необходимые параметры в окне Create Relationship
(3) щелкнуть на кнопке New Relationship в панели инструментов Database Diagram, ввести имя отношения, затем определить параметры и нажать на кнопку Save
Для добавления строки в таблицу необходимо:
(1) изменить необходимые значения для строк в конструкторе запросов Query Designer и щелкнуть на любой другой строке для сохранения изменений
(2) ввести новые значения для строки, отмеченной значком New в конструкторе запроса и щелкнуть на любой другой строке для сохранения добавления
(3) щелкнуть на кнопке Diagram Pane в панели инструментов конструктора запросов и произвести необходимые изменения
Функция GETDATE позволяет:
(1) возвратить дату и время создания базы данных
(2) возвратить текущие системные дату и время
(3) определить следующие дату и время резервного копирования
Полный синтаксис оператора SELECT имеет вид:
(1) SELECT select_list [ INTO new_table ] FROM table_source WHERE search_condition [ HAVING search_condition ] [ GROUP BY group_by_expression ]
(2) SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ]
(3) SELECT select_list FROM table_source [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ]
SELECT Oils.OilID, Oils.OilName, Odors.Odor FROM Oils INNER JOIN OilOdors ON Oils.OilID = OilOdors.OilID INNER JOIN Odors ON OilOdors.OdorID = Odors.OdorID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условия полного внешнего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
(2) возвращает только те строки, для которых условия внутреннего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
(3) возвращает только те строки, для которых условия связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение FALSE
SELECT PlantParts.PlantPart, Count(Oils.OilName) AS [NumberOfOils] FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID GROUP BY PlantParts.PlantPart Данный сценарий выполняет действия:
(1) возвращает количество элементов PlanPart для каждого типа OilName, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(2) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(3) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
Представление может быть изменено путем:
(1) только удаления и создания нового с необходимыми параметрами
(2) изменения его имени
(3) изменения базового оператора SQL для представления
(4) изменения базовых таблиц, на основе которых создается представление
Для вставки нескольких строк следует использовать следующий синтаксис оператора INSERT:
(1) INSERT [INTO] таблица_или_представление [(список_столбцов)] VALUES (список_значений)
(2) INSERT INTO таблица_или_представление [(список_столбцов)] SELECT [(список_столбцов) FROM таблица_или_представление [WHERE (условие)]
(3) INSERT INTO таблица_или_представление [(список_столбцов)] FROM таблица_или_представление
UPDATE MyOils SET MyOils.PlantPartID = Oils.PlantPartID FROM MyOils INNER JOIN Oils ON MyOils.OilName = Oils.OilName Данный сценарий выполняет действия:
(1) модифицирует значения в таблице MyOils, при этом действие фразы FROM не учитывается, так как существует связывание MyOils.PlantPartID = Oils.PlantPartID
(2) модифицирует значения в таблице MyOils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы Oils
(3) модифицирует значения в таблице Oils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы MyOils
Оператор TRUNCATE TABLE предназначен для:
(1) замены устаревшего оператора DELETE
(2) удаления всех строк в таблице
(3) удаления строк в таблице, определенных оператором DELETE
Для восстановления базы данных следует:
(1) выбрать базу данных в дереве консоли, выбрать мастер Restore Wizard и следовать затем его инструкциям
(2) в дереве консоли выбрать All Tasks и нажать на Restore Database
(3) выбрать базу данных в дереве консоли, отключить ее, затем использовать Query Designer для управления процессом через T-SQL
Для использования мастера Copy Database Wizard необходимо:
(1) быть аутентифицированным пользователем
(2) иметь доступ к серверу
(3) работать в локальной версии SQL Server 2000
filesДанное окно позволяет:
(1) определить область действия запроса
(2) изменить параметры редактора анализатора запросов Query Analyzer, такие как способ отображения, кодировка, сохранение табулирования и пробелов, и другие параметры
(3) связывать запрос с таблицей
CREATE TABLE RelatedTable ( RelatedID smallint IDENTITY (1,1) PRIMARY KEY CLUSTERED, SimpleID smallint REFERENCES SimpleTable (SimpleID), RelatedDescription varchar(20) ) Данный сценарий выполняет действия:
(1) создает виртуальную таблицу RelatedTable с ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
(2) создает таблицу RelatedTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
(3) создает таблицу SimpleTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице RelatedID)
Мастер Index Tuning Wizard предназначен для:
(1) улучшения производительности операторов SQL
(2) определения, какое сочетание представлений и индексов приведет к наиболее быстрому выполнению конкретных операций
(3) установки индексов в таблицах базы данных
Битовое представление следует использовать при:
(1) том обстоятельстве, что одно целочисленное число используется для хранения множества свойств
(2) использовании наследуемых данных
(3) определении данных в таблицах и представлениях
DECLARE var1 int, @var2 text, @var3 ntext В данном сценарии допущена ошибка:
(1) все переменные обозначаются БЕЗ каких-либо префиксов (у переменных var2 и var3 есть префикс @)
(2) все переменные обозначаются префиксом @(у переменной var1 нет префикса)
(3) не допускается использование типа text
(4) не допускается использование более двух переменных
(5) не допускается использование типа ntext
Синтаксис оператора WHILE имеет вид:
(1) WHILE Boolean_expression { sql_statement | statement_block } { BREAK } { sql_statement | statement_block } { CONTINUE }
(2) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ] { sql_statement | statement_block } [ CONTINUE ]
(3) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ]
DECLARE @CustId INT DECLARE @CustName VARCHAR( 30 ) DECLARE CustCursor CURSOR FOR SELECT CustId, Name FROM Customer ORDER BY CustId FOR READ ONLY OPEN CustCursor WHILE (0 = 0) BEGIN FETCH NEXT FROM CustCursor INTO @CustId, @CustName IF ( @@FETCH_STATUS <> 0 ) BREAK PRINT CAST ( @CustId AS VARCHAR(10) ) + ' ' + @CustName END CLOSE CustCursor DEALLOCATE CustCursor Данный сценарий выполняет действия:
(1) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
(2) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR результирующий набор строк инструкции SELECT НЕ создается. Он создается при выполнении инструкции OPEN. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
(3) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в НОВЫЙ НАБОР СТРОК. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в ТОТ ЖЕ НАБОР СТРОК до тех пор, пока таблица не будет прочитана до конца
CREATE PROCEDURE InputSP @OilName char(50) AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) определяет хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет запрос со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
(2) создает хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
(3) создает хранимую процедуру InputSP, определяет входной параметр @OilName. Результатом выполнения хранимой процедуры будет выборка строк со столбцом OilName, где входной параметр @OilName отличен от OilName из таблицы Oils
CREATE TRIGGER TrackCustomerUpdates ON AppDta.dbo.Customer FOR INSERT, UPDATE, DELETE AS DECLARE @InsertedCount INT DECLARE @DeletedCount INT SET @InsertedCount = ( SELECT COUNT (*) FROM INSERTED ) SET @DeletedCount = ( SELECT COUNT(*) FROM DELETED ) IF ( @InsertedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, CASE WHEN ( @DeletedCount > 0 ) THEN 'Update' ELSE 'Insert' END, CURRENT_USER, CURRENT_TIMESTAMP FROM INSERTED END ELSE IF ( @DeletedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, 'Delete', CURRENT_USER, CURRENT_TIMESTAMP FROM DELETED END Данный сценарий выполняет действия:
(1) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(2) временная таблица INSERTED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица DELETED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица INSERTED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(3) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция UPDATE обработала ВСЕ строки. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
filesОпция Grant access to the server позволяет:
(1) запретить доступ для индивидуального пользователя или группы к серверу
(2) предоставить доступ к серверу
(3) запретить использование сервера
Синтаксис оператора CREATE FUNCTION для подставляемой табличной функции имеет вид:
(1) CREATE FUNCTION имя_функции (список_параметров) RETURNS @локальная_табличная_переменная TABLE (определение_таблицы) AS BEGIN операторы_tsql RETURN END
(2) CREATE FUNCTION имя_функции (список_параметров) RETURNS таблица AS RETURN (оператор_выборки)
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option > [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
При создании базы данных определять процент увеличения размера файла данных следует, исходя из:
(1) настроек, предлагаемых Enterprise Manager
(2) загруженности сервера SQL Server
(3) настроек Windows
Глобальный уникальный идентификатор (GUID) характеризуется тем, что:
(1) ни один другой компьютер в локальной сети не будет генерировать это значение
(2) ни один другой в мире компьютер не будет генерировать это значение
(3) является уникальным в пределах SQL Server 2000
Для удаления индекса необходимо использовать:
(1) удаление столбца, связанного с индексом
(2) диалоговое окно Properties конструктора таблиц Table Designer
(3) панель инструментов и щелкнуть на кнопке Delete Index
При необходимости удаления отношения, следует:
(1) использовать пункт меню Update Relationship панели инструментов
(2) использовать вкладку Relationships диалогового окна Properties конструктора таблиц
(3) сначала удалить отношение, затем создать новое с необходимыми настройками
Для изменения текста условия ограничения необходимо:
(1) прежде удалить ограничение, затем создавать новое путем открытия конструктора таблиц Table Designer для таблицы, нажатия на кнопку Constraints, нажатия New и ввода требуемого выражения для проверочного ограничения
(2) открыть конструктор таблиц Table Designer для таблицы, нажать кнопку Constraints, выделить имя ограничения в поле Constraint Name и изменить текст ограничения на новое выражение условия
(3) использовать инструмент Constraint Tool, нажать Update Constraint и изменить требуемые данные
Все новые базы данных автоматически получат доступ к типу, который создан в базе данных:
(1) tempdb
(2) model
(3) master
(4) msdb
Системная база данных Model предназначена для:
(1) использования SQL Server Agent для составления расписания сопровождения задач, таких как оповещения и задания, и регистрации событий
(2) использования в качестве шаблона при создании пользователем новой базы данных
(3) временного сохранения данных
Для добавления имеющейся таблицы в диаграмму базы данных следует:
(1) прежде удалить диаграмму, затем создать новую с необходимыми настройками
(2) щелкнуть на кнопке Add Table, выбрать имя таблицы в списке и нажать ОК
(3) щелкнуть правой кнопкой мыши на таблице и выбрать Add New из контекстного меню
Для управления панелью SQL Pane необходимо:
(1) в главном меню программы выбрать Panels - Show - SQL Pane
(2) щелкнуть на кнопке SQL Pane в панели инструментов конструктора запросов
(3) вызвать Panels Viewer из панели инструментов и выбрать необходимую панель
Использование фразы TOP n PERCENT позволяет:
(1) задать определенное количество строк запроса
(2) задать определенное количество строк запроса в процентах
(3) задать определенное количество столбцов запроса
Оператор BETWEEN позволяет:
(1) указывать значения с использованием символов замещения
(2) задавать диапазон значений
(3) задавать множество, в котором содержатся значения
Внешние связывания бывают:
(1) правое внутреннее
(2) левое внешнее
(3) полное
(4) правое внешнее
(5) левое внутреннее
В один оператор SELECT может быть включена:
(1) фраза HAVING
(2) фраза WHERE
(3) операция HAVING IN WHERE
filesДанное окно предполагает:
(1) выбрать объекты базы данных для восстановления
(2) выбрать объекты базы данных для удаления
(3) объединить объекты для создания представления
filesНа данном этапе предполагается:
(1) определить таблицу для удаления из запроса
(2) выбрать таблицу, которая будет добавлена в конструктор запросов Query Designer
(3) выбрать таблицу, для которой будет применена операция INSERT
Для модифицирования определенных строк в таблице следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения
(2) UPDATE таблица_или_представление SET объекты_изменения WHERE условие
(3) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
Правильный синтаксис оператора TRUNCATE TABLE имеет вид:
(1) TRUNCATE TABLE name [FROM источники_таблиц] [WHERE условие_отбора]
(2) TRUNCATE TABLE name
(3) TRUNCATE TABLE name { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
filesСвойство Overwite The Backup Media определяет:
(1) добавление новых резервных копий к существующим
(2) замещение существующих резервных копий
(3) добавление метаданных к существующим копиям
filesПараметр Shared stored procedures from the master database определяет:
(1) будут ли копироваться объекты типа Login в новую базу данных
(2) будут ли копироваться общие хранимые процедуры из базы данных master в новую базу данных
(3) будут ли копироваться определенные пользователем сообщения об ошибках в новую базу данных
В Object Browser папка Common Objects определяет:
(1) иерархическое представление баз данных на сервере, с которым происходит соединение, а также другие распространенные объекты, используемые при создании программ T-SQL
(2) встроенные типы данных и набор основных функций T-SQL, сгруппированных в категории
(3) пользовательские типы данных
CREATE VIEW SimpleView AS SELECT Related, SimpleDescription, RelatedDescription FROM RelatedTable INNER JOIN SimpleTable ON RelatedTable.SimpleID = SimpleTable.SimpleID Данный сценарий выполняет действия:
(1) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие левого внешнего связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
(2) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
(3) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение FALSE
filesДанное окно определяет:
(1) свойства индексов для каждой таблицы
(2) параметры настройки индексов
(3) параметры настройки таблиц и представлений для работы с индексами
Функция DATEPART возвращает:
(1) количество единиц времени, между двумя указанными датами
(2) имя указанной единицы времени даты в виде числа
(3) имя указанной единицы времени даты в виде строки
Глобальная переменная @@DBTS определяет:
(1) время, бездействия SQL Server с момента последнего запуска сервера
(2) последнее значение колонки с отметкой времени, вставленной в базу данных
(3) возвращает значение текущей опции SET
DECLARE @Count INT DECLARE @Limit INT SET @Count = 0 SET @Limit = 10 WHILE ( @Count < @Limit ) BEGIN PRINT CAST ( @Count AS VARCHAR(10) ) + ' iteration' SET @Count = @Count + 1 END Данный сценарий выполняет действия:
(1) объявляет две глобальные переменные SET@Count и SET@Limit, устанавливаются начальные значения для них, затем, с помощью цикла DECLARE, до тех пор пока @Limit < @Count выводится на экран значение @Limit
(2) объявляет две локальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла WHILE, до тех пор пока @Count < @Limit выводится на экран значение @Count
(3) объявляет две глобальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла SET, до тех пор пока @Count < @Limit выводится на экран значение @Count
Позиционное обновление представляет собой:
(1) обновление курсора средствами Enterprise Manager
(2) изменение исходных значений во множестве модифицируемого курсора
(3) извлечение указанной строки из множества строк курсора
CREATE PROCEDURE DefaultSP @OilName char(50) = 'Fennel' AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет строка 'Fennel'
(2) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils, если же входной параметр не указан, то он автоматически становится равным 'Fennel'
(3) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char БЕЗ строки по умолчанию. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где @OilName = 'Fennel', другого варианта невозможно
CREATE TRIGGER TrackDiscountUpdates ON AppDta.dbo.Customer FOR UPDATE AS IF UPDATE( Discount ) INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, Discount, UpdUser, UpdDateTime ) SELECT CustId, 'Update', Discount, CURRENT_USER, СURRENT_TIMESTAMP FROM INSERTED ENDIF Данный сценарий выполняет действия:
(1) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
(2) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.Customer, и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
(3) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится выборка строк таблицы
Существуют возможности управления учетными записями с помощью Enterprise Manager:
(1) создание учетной записи
(2) удаление учетной записи
(3) изменение роли безопасности учетной записи
(4) изменение учетной записи
Синтаксис для вызова табличных пользовательских функций имеет вид:
(1) имя_владельца.имя_функции(список_параметров, список возвращаемых значений)
(2) имя_функции([список_параметров])
(3) имя_владельца.имя_функции([список_параметров])
Наиболее гибким способом создания базы данных является:
(1) Client Query Editor
(2) T-SQL
(3) Enterprise Manager
Значения по умолчанию могут быть:
(1) функциями
(2) константой
(3) математическими выражениями
Для создания индекса необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, выбрать столбец или столбцы, которые составляют первичный ключ, а затем щелкнуть на кнопке Create New Index
(2) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Indexes/Keys, нажать New, а затем установить свойства индекса
(3) использовать мастер Create Index and Keys
Для изменения отношения необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выбрать отношение в списке Selected Relationship и изменить свойство Relationship Name
(2) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выбрать отношение в списке Selected Relationship, затем выбрать другой столбец таблицы в качестве поля внешнего ключа
(3) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, щелкнуть New и установить свойства отношения
filesВыбранные настройки определяют:
(1) имя таблицы: Oils, имя ограничения: CK_DeleteMe, длина столбца OilName > 2, проверить существующие данные при создании ограничения, НЕ использовать ограничение для репликации
(2) имя таблицы: Oils, имя ограничения: CK_DeleteMe, длина столбца OilName > 2, проверить существующие данные при создании ограничения, использовать ограничение для репликации, использовать ограничение для операций INSERT и UPDATE
(3) имя таблицы: CK_DeleteMe, имя ограничения: Oils, длина столбца OilName > 2, НЕ проверять существующие данные при создании ограничения, использовать ограничение для репликации
filesПользовательские типы данных располагаются в:
(1) начале списка типов данных Data Type
(2) конце списка типов данных Data Type
(3) окне User Defined Data Types
В базах данных SQL Server существуют объекты:
(1) User defined Function
(2) Stored Procedure
(3) Default
(4) Filter
(5) Index
Символ замещения % соответствует:
(1) любому определенному символу внутри области или множества
(2) любой строки из нуля или более символов
(3) любому определенному символу, не содержащемуся в области или множестве
SELECT Oils.OilName, Properties.Property FROM Oils RIGHT OUTER JOIN OilProperties ON Oils.OilID = OilProperties.OilID INNER JOIN Properties ON OilProperties.PropertyID = Properties.PropertyID Данный сценарий выполняет действия:
(1) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
(2) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы OilProperties, отвечающие условию значения из таблицы Oils
(3) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение FALSE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
Синтаксис оператора ALTER TRIGGER имеет вид:
(1) ALTER TRIGGER trigger_name ON ( table | view ) [ WITH ENCRYPTION ] { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } }
(2) ALTER TRIGGER trigger_name ON ( table | view ) [ WITH ENCRYPTION ] { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } | { ( FOR | AFTER | INSTEAD OF ) { [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } sql_statement [ ...n ] } }
(3) ALTER TRIGGER trigger_name { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } | { ( FOR | AFTER | INSTEAD OF ) { [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } sql_statement [ ...n ] } }
Функция агрегирования STDEVP возвращает:
(1) сумму значений из коллекции, игнорируя нулевые значения
(2) стандартное статистическое отклонение все совокупности значений в коллекции
(3) стандартное статистическое отклонение для каждого из значений в коллекции
Синтаксис функции CURSOR_STATUS имеет вид:
(1) CURSOR_STATUS ( { 'local' , 'cursor_name' } { 'variable' , 'cursor_variable' } )
(2) CURSOR_STATUS ( { 'local' , 'cursor_name' } | { 'global' , 'cursor_name' } | { 'variable' , 'cursor_variable' } )
(3) CURSOR_STATUS [ { 'local' , 'cursor_name' } ]
CREATE PROCEDURE GetCustDiscount @CustId INT, @Discount DEC( 5, 3 ) OUTPUT AS SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId Данный сценарий выполняет действия:
(1) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
(2) создает хранимую процедуру GetCustDiscount, объявляется входной параметр @CustId и выходной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
(3) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются набор строк с указанными параметрами
CREATE TRIGGER CustomerDelete ON Customer INSTEAD OF DELETE AS SET NOCOUNT ON IF ( EXISTS ( SELECT * FROM DELETED JOIN Sale ON DELETED.CustId = Sale.CustId WHERE DATEDIFF( DAY, SaleDate, CURRENT_TIMESTAMP ) <365 ) ) BEGIN RAISERROR( 'One or more customers have recent sales', 16, 1) RETURN END DELETE FROM Sale WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old sales', 16, 2 ) RETURN END DELETE FROM Customer WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old customers', 16, 3 ) RETURN END RETURN Данный сценарий выполняет действия:
(1) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты и, в случае неудачи, отменяются все изменения
(2) проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются соответствующие строки таблицы Sale, т.к. все они устарели, удаляются клиенты и, в случае неудачи, отменяются все изменения
(3) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, в случае неудачи, отменяются все изменения, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты
На уровне базы данных каждая учетная запись пользователя в Windows или SQL Server:
(1) определяется только с активацией определенной базы данных
(2) связывается с учетной записью пользователя в базе данных
(3) никогда не связывается с учетной записью пользователя в базе данных
CREATE FUNCTION CustDiscount ( @CustId INT ) RETURNS DEC( 5, 3 ) BEGIN DECLARE @Discount DEC( 5, 3 ) SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId ) RETURN @Discount END Данный сценарий выполняет действия:
(1) создается функция CustDiscount, определяется имя выходной переменной - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
(2) создается функция CustDiscount, определяется тип выходного параметра - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
(3) создается функция CustDiscount, определяется имя и тип выходной переменной - DEC( 5, 3 ). Возвращает переменную @CustId, т.е. Id определенного клиента
Для добавления столбца в таблицу следует:
(1) в рабочей панели Details Pane нажать Add Column
(2) задать свойства столбца в конструкторе таблиц Table Designer
(3) использовать мастер Create Table/Column
filesОпция Enforce relationship for replication позволяет:
(1) проверять существующие данные при создании отношения
(2) осуществлять отношения для репликаций
(3) осуществлять отношения для операций INSERT и UPDATE
Для связи правила со столбцом необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы и выбрать из списка Add Rule
(2) открыть диалоговое окно Bind Rule To Column, щелкнув на Bind Columns в диалоговом окне Rule Properties. Выбрать соответствующие поля в списке Unbound Columns и нажать кнопку Add
(3) использовать встроенную утилиту Connect Rule to Column
Объект Default базы данных SQL Server определяет:
(1) набор команд T-SQL, принимающих параметры и возвращающих результат
(2) значение, автоматически присваемое самой системой, если пользователь не предоставил его
(3) виртуальную таблицу, предоставляющую альтернативный метод просмотра информации в базе данных
Синтаксис для объединения условия отбора с помощью оператора OR:
(1) boolean_expression OR
(2) boolean_expression OR boolean_expression
(3) OR (boolean_expression, boolean_expression)
Синтаксис объединения имеет вид:
(1) SELECT <список_столбцов> FROM <имя_таблицы> UNION ALL SELECT <список_столбцов> FROM <имя_таблицы> ORDER BY <список_столбцов>
(2) SELECT <список_столбцов> FROM <имя_таблицы> UNION [ALL] SELECT <список_столбцов> FROM <имя_таблицы> [ORDER BY <список_столбцов>]
(3) SELECT <список_столбцов> FROM <имя_таблицы> UNION SELECT <список_столбцов> FROM <имя_таблицы>
Для оператора ALTER COLUMN существуют ограничения. Стобец не может быть изменен, если он:
(1) используется в ограничении UNIQUE
(2) определен в таблице как ROWGIDCOL
(3) является вычисляемым столбцом или используется в вычисляемом столбце
(4) может иметь NULL-значения
(5) указывается как DEFAULT
Функция метаданных TYPEPROPERTY возвращает:
(1) указанное свойство property варианта sql_variant
(2) информацию о свойстве property для типа данных datatype
(3) имя индексированного столбца по идентификаторам indexID и keyID
Роли базы данных, созданные в базе данных master:
(1) могут использоваться только в системных базах данных
(2) будут добавляться в любую новую базу данных, которую вы создадите для этого сервера
(3) должна иметь определенные параметры
Системная функция DATALENGHT возвращает:
(1) новый уникальный идентификационный номер dataidentifier
(2) количество байт, используемых для хранения выражения
(3) определение, корректно ли данное выражение
Роль базы данных Data Reader характеризуется тем, что:
(1) может запрещать или отменять полномочия SELECT для любых объектов базы данных
(2) может выбирать все данные из любой таблицы пользователя в базе данных
(3) может выполнять операторы языка описания данных DLL, но не может выдавать операторы GRANT, REVOKE, DENY
Утилита Microsoft Management Console (MMC) предназначена для:
(1) интерактивной разработки и тестирования T-SQL операторов, пакетов и сценариев
(2) управления приложениями сервера
(3) создания и администрирования всех баз данных SQL Server
Диаграммы баз данных обеспечивают:
(1) визуальное представление структуры и отношений таблиц в базе данных (схему базы данных)
(2) стандартное табличное представление структуры и отношений таблиц в базе данных (схему базы данных)
(3) быстродействие при внесении изменений в базу данных
Для ограничения количества отображаемых строк необходимо:
(1) щелкнуть правой кнопкой мыши на таблице в рабочей панели Details Pane, открыть меню Open Table и выбрать Return Top. SQL Server отобразит диалоговое окно, запрашивающее, сколько строк вы хотите извлечь
(2) в SQL Server нельзя ограничить количество отображаемых строк
(3) щелкнуть левой кнопкой мыши на таблице, в открывшимся меню String Table Properties выбрать Limit Rows
filesДанное окно позволяет:
(1) представить фактический оператор Transact-SQL, который будет генерировать запрос с немедленным выводом результата
(2) оформлять запросы T-SQL для анализа сложности(с отложенным выполнением)
(3) производить выборку по базе данных с немедленным построением запроса
Синтаксис оператора SELECT с учетом фраз ORDER BY и WHERE имеет вид:
(1) SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ]
(2) SELECT select_list [ INTO new_table ] FROM table_source [ GROUP BY group_by_expression ] WHERE search_condition [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ]
(3) SELECT select_list [ INTO new_table ] FROM table_source [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ WHERE search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ]
SQL Server 2000 поддерживает типы связывания:
(1) внешнее
(2) удаленное
(3) внутреннее
(4) распределенное
(5) объединения
Использование ключевого слова DISTINCT позволяет:
(1) избегать дублирующихся строк в результирующем множестве
(2) возвращать все строки в результирующем множестве
(3) объединять строки с одинаковыми значениями в столбце или в столбцах, заданных во фразе, в одну строку
Индексированные представления лучше всего использовать для запросов:
(1) связывания и агрегирования, которые обрабатывают большое количество строк
(2) в которых активно используются операции связывания(INNER/OUTER JOIN)
(3) операций связывания и агрегирования, которые часто выполняются в других запросах
(4) операций связывания и агрегирования, которые НЕ выполняются в других запросах
(5) связывания и агрегирования, которые обрабатывают НЕбольшое количество строк
Оператор INSERT имеет синтаксис:
(1) INSERT [ INTO] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { [ ( column_list ) ] { VALUES ( { DEFAULT | NULL | expression } [ ,...n] ) | derived_table | execute_statement } } | DEFAULT VALUES < table_hint_limited > ::= { FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK }
(2) INSERT INTO ( table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited ) ( [ ( column_list ) ] [ VALUES ( { DEFAULT | NULL | expression } [ ,...n] ) | derived_table | execute_statement ] ) | DEFAULT VALUES < table_hint_limited > ::= ( FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK )
(3) INSERT INTO { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } < table_hint_limited > ::= { FASTFIRSTROW | HOLDLOCK | PAGLOCK | READCOMMITTED | REPEATABLEREAD | ROWLOCK | SERIALIZABLE | TABLOCK | TABLOCKX | UPDLOCK }
Оператор UPDATE может модифицировать:
(1) только одну таблицу или представление
(2) множество таблиц или представлений
(3) множество столбцов в нескольких группах таблиц
Правильный синтаксис оператора DELETE имеет вид:
(1) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ] [ WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } ] [ OPTION ( < query_hint > [ ,...n ] ) ]
(2) DELETE { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
(3) DELETE [ FROM ] { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } [ FROM { < table_source > } [ ,...n ] ]
Дифференциальное резервирование характеризуется тем, что:
(1) записывается только та информация, которая была изменена после полного последнего резервирования
(2) определяет точную копию базы данных на какой-либо момент времени
(3) дает возможность восстанавливать состояние базы данных на определенный момент времени
Data Transformation Services (DTS) определяет:
(1) набор графических инструментальных средств и программных объектов, который дает возможность импортировать и экспортировать данные, преобразовывать структуры данных и объединять данные из различных источников для их анализа и составления отчетов
(2) утилиту для быстрого и эффективного обновления и преобразования данных
(3) сервис доступа к объектам базы данных: таблицам, представлениям, хранимым процедурам и др.
Для управления запросами T-SQL следует использовать:
(1) Query Analyzer
(2) Enterprise Manager
(3) Query Designer Manager
Язык SQL имеет составляющие:
(1) DML
(2) DSQL
(3) DSL
(4) DDL
(5) IDL
Планы выполнения предназначены для:
(1) графического отображения последовательного выполнения запроса SQL Server
(2) объединения нескольких запросов в один для улучшения производительности
(3) более удобного управления запросами
К командам администрирования базы данных относятся:
(1) SET
(2) TRUNCATE TABLE
(3) UPDATE STATISTICS
(4) DENY
(5) USE
Временная таблицы не может иметь:
(1) ограничений внешнего ключа FOREIGN KEY
(2) ограничений первичного ключа PRIMARY KEY
(3) разрешений значений NULL и ограничений CHECK
Синтаксис операторов IF...ELSE имеет вид:
(1) IF Boolean_expression { sql_statement | statement_block } [ ELSE { sql_statement | statement_block } ]
(2) IF Boolean_expression THEN { sql_statement | statement_block } [ WHILE { sql_statement | statement_block } ]
(3) IF Boolean_expression { sql_statement | statement_block } ELSE { sql_statement | statement_block }
При создании курсора T-SQL на команду SELECT накладываются ограничения:
(1) команда SELECT не может возвращать несколько результирующих множеств
(2) команда SELECT не может содержать фраз ORDER BY и HAVING
(3) команда SELECT не может содержать фразу COMPUTE или COMPUTE BY, используемые для агрегирования результатов
(4) команда SELECT не может содержать фразу INTO для создания новой таблицы
(5) невозможность использования фразы WHERE
Хранимые процедуры обладают преимуществами:
(1) хранимые процедуры являются объектами базы данных; они размещаются в файле базы данных и перемещаются вместе с файлом в случае отключения или репликации базы данных
(2) хранимые процедуры работают напрямую с файлами базы данных
(3) способность работать с переменными обладают только хранимые процедуры
(4) хранимые процедуры представляются в оптимизированной форме, что дает возможность ускорить их выполнение
(5) хранимые процедуры позволяют вам передавать данные процедуре для их обработки и принимать обратно от процедуры как данные, так и сформированный процедурой итоговый код
Триггеры характеризуются тем, что:
(1) SQL Server автоматически вызывает их при обращении к команде, для которой они определены
(2) SQL Server быстрее выполняет их при работе с данными
(3) имеют более широкую синтаксическую форму по сравнению с хранимыми процедурами
Под аутентификацией понимается:
(1) проверка предоставленного идентификатора login ID на корректность и определение привилегий
(2) проверка при создании идентификатора login ID на корректность
(3) создание идентификатора login ID
Функция является недетерминированной, если:
(1) она может возвращать различные значения при одном и том же заданном входном значении
(2) при различных входных значениях она всегда возвращает один и тот же результат
(3) при одном и том же заданном входном значении она всегда возвращает один и тот же результат
По умолчанию SQL Server размещает файлы базы данных и журнала транзакций:
(1) в одном месте
(2) на разных дисках
(3) обязательно на разных компьютерах
Атрибут в описании базы данных в физической реализации соответствует:
(1) столбцу
(2) таблице
(3) экземпляру строки
При создании первичного ключа SQL Server автоматически создает:
(1) кластерный индекс
(2) некластерный индекс
(3) ограничивающий индекс
В отношении один-ко-многим:
(1) каждая строка таблицы связана с нулем, одной или несколькими строками другой таблицы
(2) каждая строка таблицы связана с нулем или одной строкой другой таблицы
(3) каждая строка первой таблицы связана с нулем, одной или несколькими строками второй таблицы, а каждая строка второй таблицы может быть связана с нулем, одной или несколькими строками первой таблицы
В реляционной терминологии домен представляет собой:
(1) область значений, которые может содержать столбец
(2) совокупность значений строки
(3) сущность таблицы или отношения
Прежде чем связывать умолчания со столбцом таблицы, необходимо:
(1) создать умолчание
(2) определить название умолчания, а после связи со столбцом определить свойства умолчания
(3) нет необходимости прежде создавать умолчания. Сначала умолчание связывается со столбцом, а уж потом создается
Использование модели Windows Authentication, для аутентификации при входе в систему, позволяет:
(1) "прозрачно" допускать пользователей Microsoft Windows 2000 и Windows NT в систему, используя их пароли и имена пользователей в операционной системе
(2) серверу самому управлять аутентификацией пользователей, и пользователи должны вводить имя и пароль при соединении с базой данных
(3) использовать промежуточный уровень доступа, который обладает более высокой степенью защиты
filesНа данном этапе следует:
(1) выбрать таблицы, которые будут включены в диаграмму базы данных
(2) выбрать таблицы, которые НЕ будут использоваться для построения диаграммы
(3) создать специальные таблицы для функционирования диаграммы базы данных
filesС помощью данного окна можно:
(1) управлять строками в таблице
(2) определять состояние таблицы
(3) создавать новые таблицы и определять столбцы
Для отбора избранных столбцов оператор SELECT может иметь вид:
(1) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
(2) SELECT * FROM Customer, Sale WHERE Customer.CustID = Sale.CustID
(3) SELECT Customer.CustID, Customer.Name, Sale.SaleDate FROM Customer WHERE Customer.CustID = Sale.CustID
Для сортировки строк с использованием панели Grid Pane необходимо:
(1) установить тип сортировки Sort Type для нужного поля и нажать кнопку Run
(2) определить способ установки значений для таблицы и нажать кнопку OK
(3) выбрать способ сортировки(ASC, DESC, BLOCK) и нажать кнопку Enter
Полная спецификация для любого объекта базы данных определяется идентификаторами имен:
(1) сервера
(2) базы данных
(3) владельца
(4) объекта
filesДанное окно позволяет:
(1) установить свойства запроса, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
(2) установить свойства таблиц в запросе, такие как удаление дублирующихся строк во множестве, показ всех колонок и другие
(3) определить представление будущей диаграммы
filesНа данном этапе предполагается выбрать:
(1) объекты для включения в представление
(2) объекты для включения в базу данных
(3) представление, которое будет выполнено
При использовании оператора INSERT для модификации представления следует учитывать ограничения:
(1) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(2) представление не должно содержать вычисляемых столбцов
(3) представление должно ссылаться на таблицу во фразе FROM
(4) представление не должно содержать функций агрегирования
(5) оператор INSERT модифицирует столбцы только из одной таблицы
При использовании оператора UPDATE для модификации представления следует учитывать ограничения:
(1) представление не должно содержать вычисляемых столбцов
(2) представление не должно содержать функций агрегирования
(3) оператор UPDATE модифицирует столбцы только из одной таблицы
(4) представление не должно содержать операторов TOP, GROUP BY, UNION или DISTINCT
(5) представление должно ссылаться на таблицу во фразе FROM
Висячими строками называют:
(1) строки в зависимой таблице, которые не имеют соответствующих строк в главной таблице
(2) удаленные строки в таблице
(3) строки, которые не были удалены в ходе выполнения запроса
Набор носителей резервных копий может быть:
(1) одним дисковым файлом
(2) обязательно представлен 3 файлами
(3) представлен любым количеством файлов, определяемых пользователем
(4) набором из нескольких накопителей
filesПри выборе опции Use A Query To Specify The Data To Transfer:
(1) используется запрос T-SQL для передачи данных
(2) происходит копирование таблиц и представлений из источника данных
(3) копируются объекты и данные между базами данных SQL Server
Если вы хотите переключиться на другую базу данных при запущенном Query Analyzer, то:
(1) необходимо выбрать ее имя в панели инструментов или в меню Query
(2) необходимо изменить имя базы данных в поле View Database
(3) следует закрыть анализатор запросов Query Analyzer, затем открыть новый с необхоимыми настройками
Синтаксис оператора CREATE INDEX имеет вид:
(1) CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ WITH < index_option > [ ,...n] ] [ ON filegroup ] < index_option > :: = { PAD_INDEX | FILLFACTOR = fillfactor | IGNORE_DUP_KEY | DROP_EXISTING | STATISTICS_NORECOMPUTE | SORT_IN_TEMPDB }
(2) CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ ON filegroup ]
(3) CREATE INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] ) [ WITH < index_option > [ ,...n] ] < index_option > :: = { PAD_INDEX | FILLFACTOR = fillfactor | IGNORE_DUP_KEY | DROP_EXISTING | STATISTICS_NORECOMPUTE | SORT_IN_TEMPDB }
filesОкно подсказки описывает:
(1) действие, представляемое значком, а также такой цену выполнения ввода/вывода I/O, цену загрузки процессора, число строк в операции, итоговую цену операции и некоторые другие параметры
(2) действие, представляемое всем сценарием
(3) запрос в более наглядной форме
Команда администрирования базы данных SET позволяет:
(1) управлять окружением SQL Server
(2) установить определенные разрешения для объекта безопасности
(3) отключить определенные разрешения для объекта безопасности, и предотвратить наследование объектом разрешений через его членство в роли или группе
Временные таблицы всегда создаются в системной базе данных:
(1) tempdb
(2) msdb
(3) model
DECLARE @x INT SET @x = NULL IF ( (@x = 0) OR (@x <> 0) ) PRINT 'True' ELSE PRINT 'Unknown' Данный сценарий выполняет действия:
(1) объявляет локальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'Unknown'
(2) объявляет переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
(3) объявляет глобальную переменную @x, устанавливает ей значение NULL, затем, проверив условие IF..ELSE, выведет на печать 'True'
Под обновлением курсора следует понимать:
(1) возможность обновления строк курсором
(2) способность осуществления прокрутки как вперед, так и назад, либо только вперед
(3) cпособность курсора отражать изменения в данных
Хранимые процедуры в SQL Server 2000 делятся на группы:
(1) пользовательские хранимые процедуры
(2) быстрые хранимые процедуры
(3) системные хранимые процедуры
(4) хранимые процедуры доступа
(5) дискретные хранимые процедуры
SQL Server 2000 накладывает ряд ограничений на действия, выполняемые триггерами:
(1) нельзя создавать (командой CREATE), изменять (командой ALTER) или удалять (командой DROP) базу данных с использованием триггера
(2) нельзя изменять структуру таблиц с использованием триггеров и хранимых процедур
(3) нельзя восстанавливать базу данных или файл журнала
(4) нельзя выполнять определенные операции, которые изменяют конфигурацию SQL Server
(5) запрещается совместное использование триггеров и хранимых процедур в одном сценарии
Microsoft рекомендует использовать режим аутентификации:
(1) Windows Authentication
(2) SQL Server Authentication
(3) Client Authentication
Скалярные пользовательские функции отличаются от табличных тем, что:
(1) скалярные пользовательские функции возвращают скалярный (однозначный) результат, такой как строка или число
(2) табличные пользовательские функции возвращают скалярный (однозначный) результат, такой как строка или число
(3) скалярные пользовательские функции возвращают таблицу и не заменяют хранимые процедуры или представления, но в определенных ситуациях они могут предоставить более широкие возможности, которые трудно реализовать с помощью этих объектов
filesДанный этап позволяет настроить:
(1) увеличение размера файлов базы данных
(2) увеличение размера журнала транзакций по мере необходимости
(3) местоположение базы данных
В SQL Server существует множество типов данных. Тип данных binary отличается от varbinary тем, что:
(1) binary - двоичные данные фиксированной длины, а varbinary - двоичные данные переменной длины
(2) varbinary - двоичные данные фиксированной длины, а binary - двоичные данные переменной длины
(3) varbinary - двоичные данные переменной длины, максимальная длина составляет 8000 байт, а binary - двоичные данные переменной длины, максимальная длина составляет 2^31-1
filesНа данном этапе отображаются:
(1) имеющиеся для таблицы индексы
(2) предполагаемые индексы
(3) столбцы для определения индексов
Для реализации отношения многие-ко-многим SQL Server использует:
(1) узловую структуру
(2) линейную структуру
(3) иерархическую структуру
Функция LEN имеет синтаксис:
(1) LEN ( string_expression )
(2) LEN ( string_expression, count_elements )
(3) LEN ( string_expression, count ) : varchar
Для того, чтобы снять действие умолчания необходимо:
(1) в конструкторе таблиц Design Table выделить значение поля Default Value и нажать клавишу Delete
(2) использовав Default Value Tool найти требуемое умолчание и нажать клавишу Delete
(3) удалить столбец, затем добавить новый с требуемым умолчанием
filesПри выборе SQL Server Authentication следует:
(1) использовать информацию, назначенную системным администратором
(2) воспользоваться настройками Windows
(3) дополнительно проконсультироваться с архитекторами базы данных
Для добавления таблицы в диаграмму базы данных следует:
(1) щелкнуть на кнопке Add Table в диаграмме базы данных. SQL Server отобразит диалоговое окно Add Table. затем выбрать таблицу и нажать Add
(2) удалить всю диаграмму базы данных, а затем создать новую с необходимыми настройками
(3) выбрать таблицу для добавления из окна Available Tables, затем нажать клавишу Add
Панель SQL Pane позволяет:
(1) представить фактический оператор Transact-SQL, который будет генерировать запрос
(2) представлять запрос в виде, аналогичном диаграмме базы данных
(3) быстро изменять заголовки столбцов в запросе, задавать порядок, в котором будут отображаться строки, а также указывать условие отбора
Использование псевдонимов оправдано в случае:
(1) если имя столбца имеет слишком большую длину или непривычное отображение
(2) если используется небольшое количество таблиц
(3) использования столбцов с маленькой длиной для улучшения отображения
SELECT stdID, stdName, stdType FROM STUDENTS ORDER BY stdName DESC Данный сценарий выполняет действия:
(1) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке убывания
(2) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по полю stdName в порядке возрастания
(3) производит выборку из таблицы STUDENTS столбцов stdID, stdName, stdType, сортирует данные по всем полям в порядке убывания
Внутреннее связывание возвращает:
(1) только те строки, для которых условие связывания имеет значение TRUE
(2) все строки из одной или более таблиц, независимо от того, имеют ли они соответствующие строки в другой таблице
(3) только те строки, для которых условие связывания имеет значение FALSE
SELECT DISTINCT PlantTypes.PlantType FROM Oils INNER JOIN PlantTypes ON Oils.PlantTypeID = PlantTypes.PlantTypeID Данный сценарий выполняет действия:
(1) возвращает отличающиеся значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
(2) возвращает все строки, несмотря на условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils и PlantTypes
(3) возвращает все значения PlantType, для которых условие связывания(Oils.PlantTypeID = PlantTypes.PlantTypeID) для таблиц Oils, PlantTypes имеет значение TRUE
Для виртуальной таблицы базовым оператором SQL является:
(1) SELECT TOP n FROM <имя представления>
(2) оператор TRUNCATE TABLE, так как представление является виртуальной таблицей
(3) оператор запроса, создавший представление
Использование ключевого слова DEFAULT позволяет:
(1) задать для строки значения, установленные по умолчанию
(2) вставить в таблицу пустую строку
(3) создавать DEFAULT-объект, связанный с текущей таблицей
UPDATE MyOils SET Sample = "Sample Field" Данный сценарий выполняет действия:
(1) обновляет значения столбца Sample на 'Sample Field' в таблице MyOils
(2) обновляет столбец Sample на 'Sample Field' в таблице MyOils
(3) добавляет новое значение в таблицу MyOils со значением столбца Sample = 'Sample Field'
DELETE FROM MyOils WHERE (OilName = 'Basil') Данный сценарий выполняет действия:
(1) удаляет строки из таблицы MyOils, которые удовлетворяют условию(поле OilName имеет значение 'Basil')
(2) удаляет все строки из таблицы MyOils
(3) удаляет столбец OilName из таблицы MyOils
Мастер Database Maintenance Plan Wizard может использоваться для:
(1) создания расписания для задач по сопровождению, которые должны регулярно выполняться
(2) создания процесса обслуживания резервной копии базы данных
(3) проверки целостности базы данных и синхронизации ее с резервной копией
filesНа данном этапе предполагается:
(1) выбрать время эскпортирования данных: немедленное или отложенное, а также настроить некоторые параметры
(2) определить формат выходного файла, настроить параметры, такие как тип файла, разделители, спецификатор и другие
(3) выбрать тип выходного файла(в данном случае Text File) и определить месторасположение файла
Окно Query также предоставляет возможность:
(1) отображения каждого вида запроса на отдельной вкладке, а не в панели
(2) отображения каждого вида запроса в панели для лучшего представления данных
(3) определения наилучшего представления запроса во вкладке View
Синтаксис оператора CREATE DATABASE имеет вид:
(1) CREATE DATABASE database_name [ ON [ < filespec > [ ,...n ] ] [ , < filegroup > [ ,...n ] ] ] [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ] < filespec > ::= [ PRIMARY ] ( [ NAME = logical_file_name , ] FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size | UNLIMITED } ] [ , FILEGROWTH = growth_increment ] ) [ ,...n ] < filegroup > ::= FILEGROUP filegroup_name < filespec > [ ,...n ]
(2) CREATE DATABASE database_name [ ON [ < filespec > [ ,...n ] ] [ , < filegroup > [ ,...n ] ] ] < filespec > ::= [ PRIMARY ] ( [ NAME = logical_file_name , ] FILENAME = 'os_file_name' [ , SIZE = size ] [ , MAXSIZE = { max_size | UNLIMITED } ] [ , FILEGROWTH = growth_increment ] ) [ ,...n ] < filegroup > ::= FILEGROUP filegroup_name < filespec > [ ,...n ]
(3) CREATE DATABASE database_name [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ]
filesДанное окно определяет:
(1) результаты трассировки запроса
(2) параметры трассировки
(3) объекты трассировки
Наименьший приоритет имеет операция:
(1) OR
(2) AND
(3) NOT
SELECT OilName, LatinName INTO ##TempTable FROM Oils Данный сценарий выполняет действия:
(1) создает глобальную временную таблицу ##TempTable
(2) создает локальную временную таблицу ##TempTable
(3) определяют новую виртуальную таблицу TempTable
Синтаксис оператора CASE имеет вид:
(1) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] [ ELSE else_result_expression ] END
(2) CASE input_expression WHEN when_expression THEN result_expression [ ...n ] END
(3) CASE input_expression WHILE whILE_expression DO result_expression [ ...n ] [ ELSE else_result_expression ] END CASE
Динамические курсоры характеризуются тем, что:
(1) ведут себя так, как если бы при каждом обращении к строке повторно выполнялся оператор SELECT
(2) делают как бы моментальный снимок данных, задаваемых оператором SELECT, и хранят их в базе данных tempdb
(3) допускают только чтение. Эти виды курсора объявляются с использованием ключевого слова FAST_FORWARD, и чаще всего их называют "пожарными" курсорами
Синтаксис оператора EXECUTE имеет вид:
(1) [ [ EXEC [ UTE ] ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] [ WITH RECOMPILE ]
(2) [ [ EXEC [ UTE ] ] [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ] { WITH RECOMPILE }
(3) [ EXECUTE ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] ] [ ,...n ]
Синтаксис оператора CREATE TRIGGER имеет вид:
(1) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
(2) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] sql_statement [ ...n ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
(3) CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ AS ] [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] } ] sql_statement [ ...n ] } }
filesДанная страница позволяет:
(1) выбрать роли безопасности, которые будут действовать для данной учетной записи
(2) выбрать роли безопасности, которые будут действовать для данной базы данных
(3) определить предоставление временных ролей администрирования для базы данных
Синтаксис оператора CREATE FUNCTION имеет вид:
(1) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option > [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) { RETURNS scalar_return_data_type } { WITH < function_option > [ [,] ...n] } { AS } BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type BEGIN function_body RETURN scalar_expression END
С помощью Enterprise Manager НЕ может быть выполнена операция:
(1) переименование базы данных
(2) удаление базы данных
(3) конфигурирование базы данных
filesСвойство scale позволяет определить:
(1) количество знаков после запятой
(2) количество знаков до запятой
(3) общее количество знаков
Для создания первичного ключа необходимо:
(1) в окне редактирования колонок таблицы щелкнуть на кнопке Primary Key в панели инструментов конструктора таблиц
(2) в окне редактирования колонок таблицы щелкнуть на кнопке New Column и в свойствах таблицы указать Primary Key
(3) в окне свойства таблицы щелкнуть на кнопке Primary Key, затем выбрать колонку и нажать Enter
Каскадные изменения представляют собой:
(1) изменения в главных и зависимых связанных таблицах
(2) изменения только в главной таблице, связанные таблицы не учитываются
(3) изменения только в зависимых таблицах, главные таблицы не учитываются
filesДанное окно позволяет:
(1) определить параметры проверочного ограничения
(2) определить любые типы ограничений
(3) создавать новые столбцы совместно с проверочными ограничениями
Правило НЕ может:
(1) ссылаться напрямую на имя столбца
(2) передаваться через переменную, имеющую форму записи @ИмяПеременной
(3) использоваться в связанных таблицах
Дерево консоли Console Tree в Enterprise Manager показывает:
(1) информацию о структуре базы данных
(2) список объектов базы данных, зарегистрированных Enterprise Manager
(3) список всех объектов SQL Server, известных Enterprise Manager
SQL Server применяет изменения схемы базы данных:
(1) SQL Server не изменяет схему базы данных. Диаграммы существуют только для удобного графического просмотра базы данных
(2) сразу же после внесения каких-либо изменений в диаграмму
(3) через определенный промежуток времени
(4) только после сохранения диаграммы
Для изучения T-SQL следует воспользоваться:
(1) SQL Pane
(2) Grid Pane
(3) Diagram Pane
SELECT TOP 7 CustID AS [ID], OrderID, SaleDate, ShipDate, DATEDIFF(Day, SaleDate, ShipDate) AS [DaysToShip] FROM Sale WHERE ShipDate IS NOT NULL Данный сценарий определяет:
(1) отображение первых 7 строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(2) отображение произвольных 7 строк запроса, в котором существуют 5 псевдонимов(ID, OrderID, SaleDate, ShipDate, DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
(3) отображение первых 7% строк запроса, в котором существуют 2 псевдонима(ID и DaysToShip) и вычисляемый столбец на основе функции DATEDIFF
При изменении порядка следования имен столбцов во фразе ORDER BY произойдет следующее:
(1) порядок их следования определяет результат – SQL Server будет сортировать строки по первому столбцу, затем по второму столбцу и т.д.
(2) сортировка будет происходить в порядке, указанном при перечислении столбцов во фразе SELECT
(3) порядок сортировки строк не изменится
SELECT Oils.OilID, Oils.OilName, PlantParts.PlantPart FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(2) возвращает только те строки, для которых условие левого внешнего связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(3) возвращает только те строки, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
Примерами функциями агрегирования являются:
(1) MIN, которая возвращает наименьшее значение во множестве
(2) MAX, которая возвращает наибольшее значение во множестве
(3) NEWID, которая определяет новый элемент во множестве
(4) COUNT, возвращающая количество значений во множестве
(5) AVG, возвращающая среднее значение во множестве
filesНа данном этапе предполагается выбрать:
(1) представление, которое будет включено в запрос
(2) таблицы, которые будут включены в представление
(3) представление, которое будет удалено из запроса
INSERT INTO Oils(OilName, LatinName, Sample) VALUES('InsertDefault', NULL, DEFAULT) Данный сценарий выполняет действия:
(1) добавляет строку в таблицу Oils со значениями('InsertDefault', NULL-значение, значение по умолчанию) для 3 столбцов(OilName, LatinName, Sample)
(2) добавляет строку в таблицу Oils со значениями('InsertDefault', 'NULL', 'DEFAULT') для 3 столбцов(OilName, LatinName, Sample)
(3) добавляет 3 строки в таблицу Oils с одинаковыми значениями('InsertDefault', NULL, DEFAULT) для 3 столбцов(OilName, LatinName, Sample)
Для обновления нескольких строк следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения FROM таблица_или_представление оператор_связывания условие_связывания [WHERE (условие_ограничения)]
(2) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
(3) UPDATE таблица_или_представление FROM таблица_или_представление оператор_связывания условие_связывания WHERE (условие_ограничения)
DELETE MyOils FROM PlantParts WHERE (MyOils.PlantPartID = PlantParts.PlantPartID) AND (PlantParts.PlantPart = 'Roots') Данный сценарий выполняет действия:
(1) удаляет строки из таблицы MyOils, которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots') для таблицы PlanParts
(2) удаляет все строки из таблицы MyOils
(3) удаляет строки из таблиц MyOils и PlanParts которые удовлетворяют условию WHERE(MyOils.PlantPartID = PlantParts.PlantPartID и PlantParts.PlantPart = 'Roots')
filesС помощью данного шага можно настроить параметры:
(1) выбор директории сохранения резервной копии базы данных, расширение для файла и дополнительно несколько параметров
(2) выбор директории сохранения резервной копии базы данных, расширение для файла и периодичность синхронизации резервной копии с базой данных
(3) выбор метода копирования, выбор директории сохранения резервной копии базы данных, расширение для файла и дополнительно несколько параметров
filesНа данном этапе предполагается:
(1) определить параметры подключения базы данных
(2) выбрать существующее подключение базы данных
(3) настроить базу данных для последующего подключения
Зеленый цвет в окне Query анализатора запросов Query Analyzer определяет:
(1) системную таблицу
(2) хранимую процедуру
(3) ключевое слово
Синтаксис, для определения столбцов имеет вид:
(1) <имя_столбца>> <тип_данных> [NULL | NOT NULL] [ [DEFAULT <значение_по_умолчанию>] | [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]] [ROWGUIDCOL] [<ограничение_для_столбца>[, <ограничение_для_столбца>...]]
(2) <имя_столбца>> <тип_данных> [ [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]] [ROWGUIDCOL] [<ограничение_для_столбца>[, <ограничение_для_столбца>...]]
(3) <имя_столбца>> <тип_данных> [NULL | NOT NULL] [ [DEFAULT <значение_по_умолчанию>] | [IDENTITY [(начальное_значение>, <шаг_увеличения>)[NOT FOR REPLICATION]]]]
filesДанное окно определяет:
(1) статистику по выполненному запросу с многочисленными параметрами
(2) параметры запроса
(3) объекты, подвергшиеся изменению в ходе выполнения запроса
Оператор <> определяет значение:
(1) не равно
(2) равно
(3) больше или меньше
Синтаксис оператора DECLARE имеет вид:
(1) DECLARE {{ @local_variable data_type } | { @cursor_variable_name CURSOR } | { table_type_definition } } [ ,...n] < table_type_definition > ::= TABLE ( { < column_definition > | < table_constraint > } [ ,... ] ) < column_definition > ::= column_name scalar_data_type [ COLLATE collation_name ] [ [ DEFAULT constant_expression ] | IDENTITY [ ( seed, increment ) ] ] [ ROWGUIDCOL ] [ < column_constraint > ] < column_constraint > ::= { [ NULL | NOT NULL ] | [ PRIMARY KEY | UNIQUE ] | CHECK ( logical_expression ) } < table_constraint > ::= { { PRIMARY KEY | UNIQUE } ( column_name [ ,... ] ) | CHECK ( search_condition ) }
(2) DECLARE {{ @local_variable data_type } } [ ,...n]
(3) DECLARE {{ @local_variable data_type } | { @cursor_variable_name CURSOR } | { table_type_definition } } [ ,...n] < table_type_definition > ::= TABLE ( { < column_definition > [ ,... ] ) < column_definition > ::= column_name scalar_data_type [ COLLATE collation_name ] [ [ DEFAULT constant_expression ] | IDENTITY [ ( seed, increment ) ] ] [ ROWGUIDCOL ] [ < column_constraint > ] < column_constraint > ::= { [ NULL | NOT NULL ] | [ PRIMARY KEY | UNIQUE ] | CHECK ( logical_expression ) }
Синтаксис оператора GOTO имеет вид:
(1) label: ... GOTO label
(2) label: {variable} WHILE < variable DO GOTO label
(3) label: var SET var BEGIN GOTO label END
Синтаксис оператора DECLARE CURSOR имеет вид:
(1) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ] FOR select_statement [ FOR UPDATE [ OF column_name [ ,...n ] ] ]
(2) DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] FOR select_statement { FOR UPDATE [ OF column_name [ ,...n ] ] }
(3) DECLARE cursor_name CURSOR { LOCAL | GLOBAL } { FORWARD_ONLY | SCROLL } [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ]
Синтаксис оператора CREATE PROCEDURE имеет вид:
(1) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
(2) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] { FOR REPLICATION }
(3) CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] { WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } } { FOR REPLICATION } [ AS sql_statement [ ...n ] ]
Функция UPDATE предназначена для:
(1) использования в триггере для определения, подвергся ли изменению определенный столбец в строке
(2) использования в триггере для определения, подвергалась ли изменению определенная строка
(3) определения, к какой операции предназначен триггер
Роль Process Administrators характеризуется тем, что:
(1) может управлять процессами, запущенными в SQL Server
(2) может управлять файлами диска
(3) может управлять учетными записями и разрешениями CREATE DATABASE, а также читать журнал ошибок
CREATE FUNCTION CustWithDiscount ( @MinDiscount DEC( 5, 3 ) ) RETURNS @CustWithDiscountTable TABLE ( ( CustID INT NOT NULL, CustName CHAR( 30 ) NOT NULL, CustDisc DEC( 5, 3 ) NULL, PRIMARY KEY( CustID ) ) BEGIN INSERT INTO @CustWithDiscountTable SELECT CustId, Name, CAST( Discount AS VARCHAR( 7 ) ) FROM Customer WHERE Discount >= @MinDiscount RETURN END Данный сценарий выполняет действия:
(1) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкции INSERT, UPDATE и DELETE, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
(2) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе как значение функции
(3) создается функция CustWithDiscount. В многострочной табличной пользовательской функции предложение RETURNS определяет локальную переменную специального типа table. Объявление этой переменной содержит определения столбцов и необязательные определения ограничений первичного ключа, ограничений уникальности и ограничений на значения. В теле функции могут использоваться инструкция INSERT, модифицирующие данные таблицы, определяемой этой переменой. При выполнении инструкции RETURN текущее содержимое таблицы возвращается вызывающей программе КАК НАБОР ОДНОСВЯЗАННЫХ ТАБЛИЦ
Для удаления базы данных необходимо:
(1) выделить базу данных в дереве консоли Console Tree и нажмите кнопку Delete
(2) щелкнуть правой кнопкой мыши на базе данных в дереве консоли Console Tree, затем выберите Properties и выбрать Delete Database
(3) удалить базу даных через Enterprise Manager нельзя. Для этого необходимо удалить ее вручную из каталога данных
Идентификационные столбцы могут иметь типы данных:
(1) int
(2) smallmoney
(3) smallint
(4) decimal
(5) real
При создании уникальных индексов для столбцов, которые допускают использование NULL-значений, SQL Server:
(1) разрешит использование только одной строки со значением NULL
(2) разрешит использование множества строк со значением NULL
(3) не разрешает создавать уникальных индексов
filesОпция Cascade Delete Related Records позволяет:
(1) использовать каскадные удаления
(2) использовать каскадные изменения
(3) осуществлять отношения для операций INSERT и UPDATE
Для изменения проверочных ограничений необходимо:
(1) использовать диалоговое окно Properties конструктора таблиц Table Designer
(2) прежде удалить ограничение, а затем создавать новое с помощью мастера Create Constraint
(3) использовать инструмент Constraint Create/Update Tool
filesДанное окно позволяет указать:
(1) имя и текст правила, а также некоторые другие параметры
(2) имя, текст и таблицы, для которых будет дествовать правило
(3) имя, текст и месторасположение правила в базе данных
Объект Meta Data Services в дереве консоли Enterprise Manager представляет собой:
(1) утилиты для сопровождения метаданных для баз данных
(2) коллекцию таблиц и других элементов, которые хранят определенный набор структурированных данных
(3) набор графических инструментов и программных объектов для управления SQL Server
Если вы хотите создать отношение в окне Database Diagram, то следует:
(1) перетащить поле из таблицы первичного ключа и поместить его в таблицу внешнего ключа. Установить необходимые параметры в окне Create Relationship
(2) щелкнуть на кнопке New Relationship в панели инструментов Database Diagram, ввести имя отношения, затем определить параметры и нажать на кнопку Save
(3) воспользоваться мастером Create New Relationship
Для управления панелью Diagram Pane необходимо:
(1) щелкнуть на кнопке Diagram Pane в панели инструментов конструктора запросов
(2) изменить необходимые значения для строк в конструкторе запросов Query Designer и щелкнуть на любой другой строке для сохранения изменений, затем автоматически откроется окно Diagram Pane
(3) ввести новые значения для строки, отмеченной значком New в конструкторе запроса и щелкнуть на любой другой строке для сохранения добавления, после чего автоматически откроется окно Diagram Pane
Операция конкатенации строк позволяет:
(1) складывать две строки
(2) вычитать две и более строк
(3) находить подстроку в главной строке
Базовая структура фразы WHERE имеет форму:
(1) WHERE <столбец> <оператор> <значение>
(2) WHERE <столбец> <оператор>
(3) WHERE <столбец> = <значение>
SELECT Oils.OilID, Oils.OilName, Odors.Odor FROM Oils INNER JOIN OilOdors ON Oils.OilID = OilOdors.OilID INNER JOIN Odors ON OilOdors.OdorID = Odors.OdorID Данный сценарий выполняет действия:
(1) возвращает только те строки, для которых условия внутреннего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
(2) возвращает только те строки, для которых условия связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение FALSE
(3) возвращает только те строки, для которых условия полного внешнего связывания(Oils.OilID = OilOdors.OilID, OilOdors.OdorID = Odors.OdorID) для таблиц Oils, OilOdors и Odors имеют значение TRUE
SELECT PlantParts.PlantPart, Count(Oils.OilName) AS [NumberOfOils] FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID GROUP BY PlantParts.PlantPart Данный сценарий выполняет действия:
(1) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
(2) возвращает количество элементов OilName для каждого типа PlantPart, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение FALSE
(3) возвращает количество элементов PlanPart для каждого типа OilName, для которых условие связывания(Oils.PlantPartID = PlantParts.PlantPartID) для таблиц Oils, PlantParts имеет значение TRUE
Для изменения представления следует использовать:
(1) встроенные средства Enterprise Manager
(2) только удаление представления и создание нового с необходимыми параметрами
(3) утилиту Update View
Для вставки нескольких строк следует использовать следующий синтаксис оператора INSERT:
(1) INSERT INTO таблица_или_представление [(список_столбцов)] SELECT [(список_столбцов) FROM таблица_или_представление [WHERE (условие)]
(2) INSERT INTO таблица_или_представление [(список_столбцов)] FROM таблица_или_представление
(3) INSERT [INTO] таблица_или_представление [(список_столбцов)] VALUES (список_значений)
UPDATE MyOils SET MyOils.PlantPartID = Oils.PlantPartID FROM MyOils INNER JOIN Oils ON MyOils.OilName = Oils.OilName Данный сценарий выполняет действия:
(1) модифицирует значения в таблице MyOils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы Oils
(2) модифицирует значения в таблице Oils, где MyOils.PlantPartID = Oils.PlantPartID, используя фразу FROM для извлечения значений из таблицы MyOils
(3) модифицирует значения в таблице MyOils, при этом действие фразы FROM не учитывается, так как существует связывание MyOils.PlantPartID = Oils.PlantPartID
Оператор TRUNCATE TABLE, отличается от оператора DELETE тем, что:
(1) оператор TRUNCATE TABLE не записывается в журнал транзакций
(2) оператор TRUNCATE TABLE обладает большей функциональностью, чем оператор DELETE
(3) оператор DELETE не записывается в журнал транзакций
Для создания плана сопровождения следует:
(1) выбрать базу данных в дереве консоли, затем запустить Database Maintenance Plan Wizard и следуйте затем его инструкциям
(2) выбрать базу данных в дереве консоли, отключить ее, затем использовать Query Designer для управления процессом через T-SQL
(3) в дереве консоли выбрать All Tasks и нажать на Plan Wizard
Мастер Copy Database Wizard предназначен для:
(1) копирования или перемещения базы данных из одного экземпляра SQL Server в другой
(2) копирования настроек и параметров базы данных, но не самих данных
(3) определения методов копирования хранимых процедур и триггеров
filesДанное окно позволяет:
(1) изменить параметры редактора анализатора запросов Query Analyzer, такие как способ отображения, кодировка, сохранение табулирования и пробелов, и другие параметры
(2) связывать запрос с таблицей
(3) определить область действия запроса
CREATE TABLE RelatedTable ( RelatedID smallint IDENTITY (1,1) PRIMARY KEY CLUSTERED, SimpleID smallint REFERENCES SimpleTable (SimpleID), RelatedDescription varchar(20) ) Данный сценарий выполняет действия:
(1) создает таблицу RelatedTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
(2) создает виртуальную таблицу RelatedTable с ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице SimpleTable)
(3) создает таблицу SimpleTable с ограничением первичного ключа(RelatedID) и ограничением внешнего ключа(SimpleID, ссылающимся на SimpleID в таблице RelatedID)
Опция Tuning Mode для анализа данных определяет:
(1) режим настройки, глубину анализа, выполняемого мастером Index Tuning Wizard
(2) самостоятельное настраивание утилиты
(3) быстроту выполнения операторов SQL
Побитовый оператор ~ означает:
(1) побитное NOT
(2) побитное исключающее OR
(3) побитное AND
DECLARE var1 int, @var2 text, @var3 ntext В данном сценарии допущена ошибка:
(1) все переменные обозначаются префиксом @(у переменной var1 нет префикса)
(2) все переменные обозначаются БЕЗ каких-либо префиксов (у переменных var2 и var3 есть префикс @)
(3) не допускается использование типа text
(4) не допускается использование типа ntext
(5) не допускается использование более двух переменных
Синтаксис оператора WHILE имеет вид:
(1) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ] { sql_statement | statement_block } [ CONTINUE ]
(2) WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ]
(3) WHILE Boolean_expression { sql_statement | statement_block } { BREAK } { sql_statement | statement_block } { CONTINUE }
DECLARE @CustId INT DECLARE @CustName VARCHAR( 30 ) DECLARE CustCursor CURSOR FOR SELECT CustId, Name FROM Customer ORDER BY CustId FOR READ ONLY OPEN CustCursor WHILE (0 = 0) BEGIN FETCH NEXT FROM CustCursor INTO @CustId, @CustName IF ( @@FETCH_STATUS <> 0 ) BREAK PRINT CAST ( @CustId AS VARCHAR(IO) ) + ' ' + @CustName END CLOSE CustCursor DEALLOCATE CustCursor Данный сценарий выполняет действия:
(1) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR результирующий набор строк инструкции SELECT НЕ создается. Он создается при выполнении инструкции OPEN. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
(2) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в НОВЫЙ НАБОР СТРОК. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в ТОТ ЖЕ НАБОР СТРОК до тех пор, пока таблица не будет прочитана до конца
(3) объявляются две переменные(@CustId и @CustName), при выполнении инструкции DECLARE CURSOR СОЗДАЕТСЯ результирующий набор строк инструкции SELECT. При первом выполнении инструкции FETCH NEXT считывает первую строку результирующей таблицы курсора и помещает значения ее столбцов в переменные, заданные в предложении INTO. Далее, выполняясь в цикле, инструкция FETCH NEXT считывает очередные строки результирующей таблицы и помещает их данные в те же переменные до тех пор, пока таблица не будет прочитана до конца
CREATE PROCEDURE InputSP @OilName char(50) AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) создает хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
(2) определяет хранимую процедуру InputSP, определяет входной параметр @OilName типа char. Результатом выполнения хранимой процедуры будет запрос со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils
(3) создает хранимую процедуру InputSP, определяет входной параметр @OilName. Результатом выполнения хранимой процедуры будет выборка строк со столбцом OilName, где входной параметр @OilName отличен от OilName из таблицы Oils
CREATE TRIGGER TrackCustomerUpdates ON AppDta.dbo.Customer FOR INSERT, UPDATE, DELETE AS DECLARE @InsertedCount INT DECLARE @DeletedCount INT SET @InsertedCount = ( SELECT COUNT (*) FROM INSERTED ) SET @DeletedCount = ( SELECT COUNT(*) FROM DELETED ) IF ( @InsertedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, CASE WHEN ( @DeletedCount > 0 ) THEN 'Update' ELSE 'Insert' END, CURRENT_USER, CURRENT_TIMESTAMP FROM INSERTED END ELSE IF ( @DeletedCount > 0 ) BEGIN INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, UpdUser, UpdDateTime ) SELECT CustId, 'Delete', CURRENT_USER, CURRENT_TIMESTAMP FROM DELETED END Данный сценарий выполняет действия:
(1) временная таблица INSERTED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица DELETED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица INSERTED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(2) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция DELETE или UPDATE обработала хотя бы одну строку. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
(3) временная таблица DELETED содержит строки в том случае, когда инструкция INSERT или UPDATE обработала хотя бы одну строку. А временная таблица INSERTED содержит строки в том случае, когда инструкция UPDATE обработала ВСЕ строки. Для инструкции UPDATE таблица DELETE содержит обновленные строки со старыми значениями, а таблица DELETED содержит те же строки с новыми значениями. В приведенном примере учтена еще одна особенность триггеров: триггеры операций DELETE и UPDATE вызываются даже в том случае, если операция не удалила или не обновила ни одной строки (потому что не нашлось строк, соответствующих условию WHERE)
Учетные записи, принадлежащие определенным ролям сервера будут:
(1) иметь привилегии для доступа ко всем базам данных, независимо от того, были ли они назначены данной учетной записи или нет
(2) иметь неограниченный доступ к выбранным базам данных
(3) использовать привилегии для доступа только к назначенным данной учетной записи базам данных
Синтаксис оператора CREATE FUNCTION для для многооператорной табличной функции имеет вид:
(1) CREATE FUNCTION имя_функции (список_параметров) RETURNS @локальная_табличная_переменная TABLE (определение_таблицы) AS BEGIN операторы_tsql RETURN END
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type WITH < function_option > [ [,] ...n] BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION имя_функции (список_параметров) RETURNS таблица AS RETURN (оператор_выборки)
При создании базы данных определять процент увеличения размера файла данных следует, исходя из:
(1) загруженности сервера SQL Server
(2) настроек, предлагаемых Enterprise Manager
(3) настроек Windows
SQL Server:
(1) НЕ генерирует GUID-идентификаторы автоматически
(2) генерирует GUID-идентификаторы автоматически
(3) генерирует GUID-идентификаторы по запросу администратора
Если вы хотите изменить столбцы в индексе, то необходимо:
(1) использовать диалоговое окно Properties конструктора таблиц Table Designer
(2) удалить индекс, а затем создать новый с измененными настройками
(3) использовать мастер Update Index
При необходимости переименования отношения, следует:
(1) использовать вкладку Relationships диалогового окна Properties конструктора таблиц
(2) сначала удалить отношение, затем создать новое с необходимыми настройками
(3) использовать пункт меню Update Relationship панели инструментов
Для удаления проверочного ограничения необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, нажать кнопку Constraints, выделить проверочное ограничение, которое хотите удалить, и нажать Delete
(2) прежде удалить таблицу, путем выбора ее и нажатия на клавишу Delete, затем удалить ограничение, использовав утилиту Constraint Tool
(3) открыть конструктор таблиц Table Designer для таблицы, нажать кнопку Constraints, выделить имя ограничения в поле Constraint Name и требуемые столбцы в поле Fields, затем снажать клавишу Delete
Пользовательские типы данных представляют собой:
(1) данные, которые задаются на основе любых внутренних типов данных SQL Server и содержат указание длины столбца
(2) объекты баз данных, которые указывают на умолчания и ограничения
(3) данные, которые непосредственно используются при описании таблицы
Системная база данных Msdb предназначена для:
(1) использования SQL Server Agent для составления расписания сопровождения задач, таких как оповещения и задания, и регистрации событий
(2) записи всей информации, необходимой для управления системы SQL Server, включая учетную запись пользователя
(3) использования в качестве шаблона при создании пользователем новой базы данных
Для удаления таблицы из диаграммы базы данных следует:
(1) щелкнуть правой кнопкой мыши на таблице и выбрать Remove Table From Diagram из контекстного меню
(2) щелкнуть правой кнопкой мыши на таблице и выбрать Remove из контекстного меню, затем выбрать тип удаления(из диаграммы или из всей базы данных) и нажать кнопку OK
(3) удалить всю диаграмму, затем создать новую с необходимыми параметрами
Для управления панелью Results Pane необходимо:
(1) щелкнуть на кнопке Results Pane в панели инструментов конструктора запросов
(2) вызвать Panels Viewer из панели инструментов и выбрать необходимую панель
(3) в главном меню программы выбрать Panels - Show - Results Pane
SELECT TOP 30 PERCENT stdID AS [ID], stdName AS [STUDENT_NAME], clsName AS [STUDENT_CLASS], GETDATE() AS [TODAY] FROM STUDENTS, CLASSES WHERE STUDENTS.stdID = CLASSES.clsID Данный сценарий определяет:
(1) отображение первых 30% строк сценария, в котором существуют 4 псевдонима столбцов(ID, STUDENT_NAME, STUDENT_CLASS, TODAY) и вычисляемый столбец на основе функции GETDATE
(2) отображение первых 30 строк сценария, в котором существуют 4 псевдонима столбцов(ID, STUDENT_NAME, STUDENT_CLASS, TODAY) и вычисляемый столбец на основе функции GETDATE
(3) отображение первых 30% строк сценария, в котором нет псевдонимов столбцов, содержит вычисляемый столбец на основе функции GETDATE
Оператор IN позволяет:
(1) задавать множество, в котором содержатся значения
(2) задавать диапазон значений
(3) указывать значения с использованием символов замещения
Левое внешнее связывание возвращает:
(1) все строки из левой таблицы во фразе JOIN и только те строки из правой таблицы, для которых условие связывания имеет значение TRUE
(2) все строки из левой таблицы во фразе JOIN и только те строки из правой таблицы, для которых условие связывания имеет значение FALSE
(3) все строки из правой таблицы в фразе JOIN и отвечающие условию значения из левой таблицы
SELECT PlantParts.PlantPart, Count(Oils.OilName) AS [NumberOfOils] FROM Oils INNER JOIN PlantParts ON Oils.PlantPartID = PlantParts.PlantPartID GROUP BY PlantParts.PlantPart HAVING NumberOfOils > 5 Ошибка сценария состоит в том, что:
(1) во фразе HAVING нельзя использовать псевдоним(NumberOfOils) для функции агрегирования(COUNT)
(2) фраза HAVING должна располагаться ДО фразы GROUP BY
(3) нельзя использовать фразу HAVING совместно со связыванием таблиц
Для добавления представления в запрос необходимо:
(1) в конструкторе запросов Query Designer нажать кнопку Add Table. Открыть вкладку Views, выбрать нужное представление, нажать Add, а затем нажать кнопку Close
(2) в рабочей панели Details Pane выбрать Create New View, затем определить параметры представления и нажать OK
(3) выбрать базовые таблицы, щелкнуть правой клавишей мыши на выделенном, нажать New View, определить параметры представления и нажать OK
filesНа данном этапе предполагается:
(1) выбрать таблицу, которая будет добавлена в конструктор запросов Query Designer
(2) выбрать таблицу, для которой будет применена операция INSERT
(3) определить таблицу для удаления из запроса
Для модифицирования всех строк в таблице следует использовать следующий синтаксис оператора UPDATE:
(1) UPDATE таблица_или_представление SET объекты_изменения Объекты_изменения представляют собой список отделяемых запятыми элементов вида столбец = значение, столбец = значение, ...
(2) UPDATE таблица_или_представление SET объекты_изменения FROM таблица_или_представление оператор_связывания условие_связывания [WHERE (условие_ограничения)]
(3) UPDATE таблица_или_представление SET объекты_изменения WHERE условие
Правильный синтаксис оператора TRUNCATE TABLE имеет вид:
(1) TRUNCATE TABLE name
(2) TRUNCATE TABLE name { FROM } { table_name WITH ( < table_hint_limited > [ ...n ] ) | view_name | rowset_function_limited } { WHERE { < search_condition > | { [ CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } } }
(3) TRUNCATE TABLE name [FROM источники_таблиц] [WHERE условие_отбора]
filesСвойство Check Media Set Name And Backup Set Expiration Date определяет:
(1) проверку срока действия резервной копии
(2) проверку обновления на резервную копию
(3) объединение резервных копий
filesПараметр User-defined error messages определяет:
(1) будут ли копироваться определенные пользователем сообщения об ошибках в новую базу данных
(2) будут ли копироваться общие хранимые процедуры из базы данных master в новую базу данных
(3) будут ли копироваться объекты типа Login в новую базу данных
Средство Object Browser в Query Analyzer позволяет:
(1) отображать иерархическое представление баз данных на сервере, с которым происходит соединение, а также другие распространенные объекты, используемые при создании программ T-SQL
(2) использовать пользовательские типы данных
(3) использовать встроенные типы данных и набор основных функций T-SQL, сгруппированных в категории
CREATE VIEW SimpleView AS SELECT Related, SimpleDescription, RelatedDescription FROM RelatedTable INNER JOIN SimpleTable ON RelatedTable.SimpleID = SimpleTable.SimpleID Данный сценарий выполняет действия:
(1) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
(2) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение FALSE
(3) создает представление SimpleView на основе оператора SELECT, возвращающим только те строки, для которых условие левого внешнего связывания(RelatedTable.SimpleID = SimpleTable.SimpleID) для таблиц RelatedTable и SimpleTable имеет значение TRUE
filesДанное окно определяет:
(1) параметры настройки индексов
(2) параметры настройки таблиц и представлений для работы с индексами
(3) свойства индексов для каждой таблицы
Функция DATENAME возвращает:
(1) имя указанной единицы времени даты в виде строки
(2) количество единиц времени, между двумя указанными датами
(3) имя указанной единицы времени даты в виде числа
Глобальная переменная @@DATEFIRST определяет:
(1) возвращает число, обозначающее день недели (Monday=1, Sunday=7)
(2) число соединений или попыток соединения с момента последнего запуска сервера
(3) число выполненных сервером операций чтения с диска с момента последнего запуска сервера
DECLARE @Count INT DECLARE @Limit INT SET @Count = 0 SET @Limit = 10 WHILE ( @Count < @Limit ) BEGIN PRINT CAST ( @Count AS VARCHAR(10) ) + ' iteration' SET @Count = @Count + 1 END Данный сценарий выполняет действия:
(1) объявляет две локальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла WHILE, до тех пор пока @Count < @Limit выводится на экран значение @Count
(2) объявляет две глобальные переменные SET@Count и SET@Limit, устанавливаются начальные значения для них, затем, с помощью цикла DECLARE, до тех пор пока @Limit < @Count выводится на экран значение @Limit
(3) объявляет две глобальные переменные @Count и @Limit, устанавливаются начальные значения для них, затем, с помощью цикла SET, до тех пор пока @Count < @Limit выводится на экран значение @Count
Функция CURSOR_STATUS:
(1) позволяет определить статус курсора
(2) определяет назначение и функции курсора
(3) предназначена для позиционного обновления курсора
CREATE PROCEDURE DefaultSP @OilName char(50) = 'Fennel' AS SELECT OilName, LatinName FROM Oils WHERE OilName = @OilName Данный сценарий выполняет действия:
(1) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где входной параметр @OilName = OilName из таблицы Oils, если же входной параметр не указан, то он автоматически становится равным 'Fennel'
(2) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char БЕЗ строки по умолчанию. Результатом выполнения хранимой процедуры будет выборка строк со столбцами OilName и LatinName, где @OilName = 'Fennel', другого варианта невозможно
(3) создает хранимую процедуру DefaultSP, определяет входной параметр @OilName типа char, по умолчанию равный 'Fennel'. Результатом выполнения хранимой процедуры будет строка 'Fennel'
CREATE TRIGGER TrackDiscountUpdates ON AppDta.dbo.Customer FOR UPDATE AS IF UPDATE( Discount ) INSERT INTO AppDta.dbo.CustUpdLog ( CustId, Action, Discount, UpdUser, UpdDateTime ) SELECT CustId, 'Update', Discount, CURRENT_USER, СURRENT_TIMESTAMP FROM INSERTED ENDIF Данный сценарий выполняет действия:
(1) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.Customer, и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
(2) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится выборка строк таблицы
(3) с помощью проверки IF UPDATE(имя столбца) проверяется, обновлен ли столбец Discount таблицы AppDta.dbo.CustUpdLog , и если да, то проводится вставка строк в таблицу, посредством оператора SELECT
Существуют возможности управления учетными записями с помощью Enterprise Manager:
(1) удаление учетной записи
(2) создание учетной записи
(3) изменение роли безопасности учетной записи
(4) изменение учетной записи
Синтаксис оператора EXECUTE для скалярной функции имеет вид:
(1) EXECUTE @возвращаемое_значение = имя_функции(список_параметров)
(2) EXECUTE @возвращаемое_значение = имя_функции(имя_владельца.имя_функции([список_параметров]))
(3) EXECUTE @возвращаемое_значение = имя_функции(имя_владельца([список_параметров]))
Наиболее гибким способом создания базы данных является:
(1) T-SQL
(2) Client Query Editor
(3) Enterprise Manager
Тип символьных данных переменной длинны отличается от типа с фиксированной длинной тем, что:
(1) если для столбца объявлена фиксированная длина, SQL Server будет дополнять введенные значения пробелами
(2) если для столбца объявлена переменная длина, SQL Server будет дополнять введенные значения пробелами
(3) если для столбца объявлена фиксированная длина, SQL Server будет дополнять введенные значения нулями
Если вы хотите изменить индекс, то следует:
(1) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Indexes/Keys и установить свойства индекса
(2) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Indexes/Keys, нажать Update Index и изменить данные
(3) удалить столбцы, связанные с индексом, затем пересоздать индекс с необходимыми настройками
Для переименования отношения необходимо:
(1) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выбрать отношение в списке Selected Relationship и изменить свойство Relationship Name
(2) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, щелкнуть New и установить свойства отношения
(3) открыть конструктор таблиц Table Designer для таблицы, щелкнуть на кнопке Relationships, выберать отношение в списке Selected Relationship, затем выбрать другой столбец таблицы в качестве поля внешнего ключа
filesВыбранные настройки определяют:
(1) имя таблицы: Oils, имя ограничения: CK_DeleteMe, длина столбца OilName > 2, проверить существующие данные при создании ограничения, использовать ограничение для репликации, использовать ограничение для операций INSERT и UPDATE
(2) имя таблицы: CK_DeleteMe, имя ограничения: Oils, длина столбца OilName > 2, НЕ проверять существующие данные при создании ограничения, использовать ограничение для репликации
(3) имя таблицы: Oils, имя ограничения: CK_DeleteMe, длина столбца OilName > 2, проверить существующие данные при создании ограничения, НЕ использовать ограничение для репликации
filesПользовательские типы данных располагаются в:
(1) конце списка типов данных Data Type
(2) окне User Defined Data Types
(3) начале списка типов данных Data Type
В базах данных SQL Server существуют объекты:
(1) Trigger
(2) Role
(3) Domain
(4) Default
Символ замещения [^] соответствует:
(1) любому определенному символу, не содержащемуся в области или множестве
(2) любой строки из нуля или более символов
(3) любому определенному символу внутри области или множества
SELECT Oils.OilName, Properties.Property FROM Oils RIGHT OUTER JOIN OilProperties ON Oils.OilID = OilProperties.OilID INNER JOIN Properties ON OilProperties.PropertyID = Properties.PropertyID Данный сценарий выполняет действия:
(1) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы OilProperties, отвечающие условию значения из таблицы Oils
(2) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение FALSE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
(3) возвращает те строки, для которых условия внутреннего связывания(OilProperties.PropertyID = Properties.PropertyID) имеет значение TRUE и все строки из таблицы Oils, отвечающие условию значения из таблицы OilProperties
Синтаксис оператора ALTER PROCEDURE имеет вид:
(1) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
(2) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] AS sql_statement [ ...n ]
(3) ALTER PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]
Функция агрегирования VARP возвращает:
(1) статистическую вариацию всех значений в коллекции
(2) статистическую вариацию значений в группе
(3) количество значений в коллекции, включая и нулевые
Синтаксис оператора FETCH имеет вид:
(1) FETCH [ [ NEXT | PRIOR | FIRST | LAST | ABSOLUTE { n | @nvar } | RELATIVE { n | @nvar } ] FROM ] { { [ GLOBAL ] cursor_name } | @cursor_variable_name } [ INTO @variable_name [ ,...n ] ]
(2) FETCH { [ NEXT | PRIOR | FIRST | LAST | ABSOLUTE { n | @nvar } | RELATIVE { n | @nvar } ] FROM } [ { [ GLOBAL ] cursor_name } | @cursor_variable_name ]
(3) FETCH [ NEXT | PRIOR ] FROM ] [ INTO @variable_name [ ,...n ] ]
CREATE PROCEDURE GetCustDiscount @CustId INT, @Discount DEC( 5, 3 ) OUTPUT AS SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId Данный сценарий выполняет действия:
(1) создает хранимую процедуру GetCustDiscount, объявляется входной параметр @CustId и выходной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
(2) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются набор строк с указанными параметрами
(3) создает хранимую процедуру GetCustDiscount, объявляется выходной параметр @CustId и входной параметр @Discount. Когда процедура завершает свою работу, вызывающей процедуре или предложению возвращаются последние значения, присвоенные ее выходным параметрам
CREATE TRIGGER CustomerDelete ON Customer INSTEAD OF DELETE AS SET NOCOUNT ON IF ( EXISTS ( SELECT * FROM DELETED JOIN Sale ON DELETED.CustId = Sale.CustId WHERE DATEDIFF( DAY, SaleDate, CURRENT_TIMESTAMP ) < 365 ) ) BEGIN RAISERROR( 'One or more customers have recent sales', 16, 1) RETURN END DELETE FROM Sale WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old sales', 16, 2 ) RETURN END DELETE FROM Customer WHERE CustId IN ( SELECT CustId FROM DELETED ) IF ( @@ERROR > 0 ) BEGIN ROLLBACK RAISERROR( 'Could not delete all old customers', 16, 3 ) RETURN END RETURN Данный сценарий выполняет действия:
(1) проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются соответствующие строки таблицы Sale, т.к. все они устарели, удаляются клиенты и, в случае неудачи, отменяются все изменения
(2) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты и, в случае неудачи, отменяются все изменения
(3) удаляются соответствующие строки таблицы Sale, т.к. все они устарели, в случае неудачи, отменяются все изменения, затем проверяется, имеются ли в таблице Sale прошлогодние заказы удаляемых клиентов, затем удаляются клиенты
Наиболее правильным будет решение:
(1) добавлять и удалять пользователей из заранее созданных групп, имеющих специфический набор привилегий безопасности
(2) назначать и удалять привилегии безопасности для отдельных пользователей
(3) создавать и удалять пользователей совместно с группами по мере необходимости
CREATE FUNCTION CustDiscount ( @CustId INT ) RETURNS DEC( 5, 3 ) BEGIN DECLARE @Discount DEC( 5, 3 ) SET @Discount = ( SELECT Discount FROM Customer WHERE CustId = @CustId ) RETURN @Discount END Данный сценарий выполняет действия:
(1) создается функция CustDiscount, определяется тип выходного параметра - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
(2) создается функция CustDiscount, определяется имя и тип выходной переменной - DEC( 5, 3 ). Возвращает переменную @CustId, т.е. Id определенного клиента
(3) создается функция CustDiscount, определяется имя выходной переменной - DEC( 5, 3 ). Возвращает переменную @Discount, т.е. скидку определенного клиента
Для удаления таблицы следует:
(1) выделить таблицу в рабочей панели Details Pane и нажать клавишу Delete
(2) выделить все столбцы в конструкторе таблиц Table Designer, нажать клавишу Delete, затем удалить таблицу из рабочей панели Details Pane
(3) задать свойство таблицы Delete after close в конструкторе таблиц Table Designer
filesОпция Enforce relationship for INSERTs and UPDATEs позволяет:
(1) осуществлять отношения для операций INSERT и UPDATE
(2) проверять существующие данные при создании отношения
(3) осуществлять отношения для репликаций
Для назначения пользовательского типа данных столбцу необходимо:
(1) открыть конструктор таблиц Table Designer и выбрать пользовательский тип данных из списка Data Type
(2) использовать утилиту User Defined Data Type Tool
(3) открыть утилиту Types Tool, выбрать из списка User Defined Data Types и определить тип данных
Объект User Defined Function базы данных SQL Server определяет:
(1) набор команд T-SQL, принимающих параметры и возвращающих результат
(2) значение, автоматически присваемое самой системой, если пользователь не предоставил его
(3) тип данных, определенный пользователем для хранения данных специального типа
Синтаксис для объединения условия отбора с помощью оператора AND:
(1) boolean_expression AND boolean_expression
(2) boolean_expression AND
(3) AND (boolean_expression, boolean_expression)
SELECT 'PropertyTable' AS TableName, PropertyID AS ID, Property AS Quality FROM Properties UNION SELECT 'OdorTable', OdorID, Odor FROM Odors ORDER BY Quality Данный сценарий выполняет действия:
(1) объединяет результаты выполнения двух операторов SELECT и определяет фактический порядок строк фразой ORDER BY
(2) возвращает результат левого внешнего связывания для всех таблиц, указанных в запросе
(3) объединяет результаты выполнения только первого оператора SELECT, для которых НЕ существует соответствия во втором операторе SELECT
Для оператора ALTER COLUMN существуют ограничения. Стобец не может быть изменен, если он:
(1) имеет тип данных text, image, ntext или timestamp
(2) используется в ограничении UNIQUE
(3) используется в ограничении CHECK
(4) может иметь NULL-значения
(5) имеет тип данных money или table
Функция метаданных SQL_VARIANT_PROPERTY возвращает:
(1) указанное свойство property варианта sql_variant
(2) информацию о свойстве property объекта по его идентификационному номеру ID
(3) идентификационный номер объекта object базы данных
Роли базы данных будут добавляться в любую новую базу данных, если они созданы в базе данных:
(1) master
(2) model
(3) msdb
Системная функция NEWID возвращает:
(1) новый уникальный идентификационный номер uniqueidentifier
(2) определение, корректно ли данное выражение
(3) имя текущего пользователя или пользователя по указанному id
Роль базы данных Public характеризуется тем, что:
(1) является ролью по умолчанию, к которой принадлежат все пользователи базы данных
(2) имеет все полномочия в базе данных
(3) может управлять всеми полномочиями, объектами, ролями и элементами ролей пользователей
Использование модели SQL Server Authentication, для аутентификации при входе в систему, позволяет:
(1) использовать промежуточный уровень доступа Microsoft Windows, который обладает более высокой степенью защиты
(2) "прозрачно" допускать пользователей Microsoft Windows 2000 и Windows NT в систему, используя их пароли и имена пользователей в операционной системе
(3) серверу самому управлять аутентификацией пользователей, и пользователи должны вводить имя и пароль при соединении с базой данных
Для добавления новых строк в Query Designer необходимо:
(1) в конструкторе запросов Query Designer на панели инструментов щелкнуть Add New, затем ввести данные и нажать Enter
(2) заполнить новую строку с помощью Row Viewer
(3) в конструкторе запросов Query Designer щелкнуть на необходимом столбце в последней строке, затем ввести данные и щелкнуть на любой другой строке
Синтаксис оператора CREATE STATISTICS имеет вид:
(1) CREATE STATISTICS statistics_name ON { table | view } ( column [ ,...n ] )
(2) CREATE STATISTICS statistics_name ON { table | view } ( column [ ,...n ] ) [ WITH [ [ FULLSCAN | SAMPLE number { PERCENT | ROWS } ] [ , ] ] [ NORECOMPUTE ] ]
(3) CREATE STATISTICS statistics_name [ WITH [ [ FULLSCAN | SAMPLE number { PERCENT | ROWS } ] [ , ] ] [ NORECOMPUTE ] ]
Доверительное соединение определяет:
(1) временное соединение программного обеспечения клиента Windows с сервером
(2) соединение программного обеспечения клиента Windows с сервером, которое будет установлено, если Windows NT/2000 уже аутентифицировал пользователя
(3) постоянное соединение между клиентом SQL Server 2000 и сервером
Регистрировать экземпляр SQL Server следует:
(1) при необходимости резервного копирования/восстановления
(2) при каждом запуске SQL Server 2000
(3) только один раз
Синтаксис оператора CREATE FUNCTION имеет вид:
(1) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) BEGIN function_body RETURN scalar_expression END
(2) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option> [ [,] ...n] ] [ AS ] BEGIN function_body RETURN scalar_expression END
(3) CREATE FUNCTION [ owner_name. ] function_name ( [ { @parameter_name [AS] scalar_parameter_data_type [ = default ] } [ ,...n ] ] ) RETURNS scalar_return_data_type [ WITH < function_option> [ [,] ...n] ] AS
Курсоры быстрого доступа характеризуются тем, что:
(1) допускают только чтение. Эти виды курсора объявляются с использованием ключевого слова FAST_FORWARD, и чаще всего их называют "пожарными" курсорами
(2) копируют в базу tempdb только те столбцы, которые уникально идентифицируют каждую строку
(3) ведут себя так, как если бы при каждом обращении к строке повторно выполнялся оператор SELECT
Правила представляют собой:
(1) объекты на уровне базы данных, которые могут быть применены к столбцам в нескольких таблицах. К столбцу может быть применено несколько проверочных ограничений и правил
(2) объекты на уровне таблицы, которые могут быть применены только в пределах создаваемой таблицы
(3) объекты на уровне базы данных, которые могут быть применены к столбцам в нескольких таблицах. К столбцу может быть применено несколько проверочных ограничений, но только одно правило
Объект Data Transformation Services в дереве консоли Enterprise Manager представляет собой:
(1) набор графических инструментов и программных объектов, позволяющих извлекать, изменять и объединять данные
(2) набор графических инструментов и программируемых объектов для управления доступом в SQL Server
(3) разнообразные утилиты для управления SQL Server
Если вы хотите создать таблицу в окне Database Diagram, то следует:
(1) использовать мастер Create Table Wizard
(2) перетащить поле из таблицы первичного ключа в окно Create New Table и установить необходимые параметры
(3) щелкнуть на кнопке New Table в панели инструментов Database Diagram, ввести имя таблицы, затем определить столбцы и нажать на кнопку Save
В SQL Server допустимы операторы сравнения:
(1) =
(2) >=
(3) !=
(4) <>
(5) ==
Системная база данных Tempdb предназначена для:
(1) временного сохранения данных
(2) использования в качестве шаблона при создании пользователем новой базы данных
(3) использования SQL Server Agent для составления расписания сопровождения задач, таких как оповещения и задания, и регистрации событий
Правое внешнее связывание возвращает:
(1) все строки из правой таблицы в фразе JOIN и отвечающие условию значения из левой таблицы
(2) все строки из левой таблицы во фразе JOIN и только те строки из правой таблицы, для которых условие связывания имеет значение TRUE
(3) все строки из обеих таблиц, отвечающие условию
В Object Browser папка Common Objects определяет:
(1) иерархическое представление баз данных на сервере, с которым происходит соединение, а также другие распространенные объекты, используемые при создании программ T-SQL
(2) встроенные типы данных и набор основных функций T-SQL, сгруппированных в категории
(3) пользовательские типы данных
filesДанное окно позволяет указать:
(1) параметры умолчания, такие как имя, ограничение и другие
(2) параметры пользовательского типа данных, такие как имя, связь с таблицами и другими объектами базы данных и другие настройки
(3) параметры пользовательского типа данных, такие как тип данных, длина, поддержка NULL-значений и другие
В базах данных SQL Server существуют объекты:
(1) Default
(2) Filter
(3) Stored Procedure
(4) Domain
(5) Role
Синтаксис оператора ALTER TRIGGER имеет вид:
(1) ALTER TRIGGER trigger_name { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } | { ( FOR | AFTER | INSTEAD OF ) { [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } sql_statement [ ...n ] } }
(2) ALTER TRIGGER trigger_name ON ( table | view ) [ WITH ENCRYPTION ] { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } | { ( FOR | AFTER | INSTEAD OF ) { [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } sql_statement [ ...n ] } }
(3) ALTER TRIGGER trigger_name ON ( table | view ) [ WITH ENCRYPTION ] { { ( FOR | AFTER | INSTEAD OF ) { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [ NOT FOR REPLICATION ] AS sql_statement [ ...n ] } }
Для удаления столбца следует:
(1) выделить столбец в конструкторе таблиц Table Designer и нажмите клавишу Delete
(2) удалить всю таблицу, а затем создать новую с необходимыми столбцами
(3) выделить папку Tables базу данных в дереве консоли Console Tree, затем выбрать таблицу, столбец и нажать клавишу Delete
Для создания пользовательского типа данных необходимо:
(1) перейти к папке User Defined Data Types базы данных, нажать New и установить свойства нового пользовательского типа данных
(2) открыть конструктор таблиц Table Designer для таблицы и выбрать из списка Add New User Defined Data Type
(3) использовать утилиту User Defined Data Type Tool
Объект User Defined Data Type базы данных SQL Server определяет:
(1) тип данных, определенный пользователем для хранения данных специального типа
(2) виртуальную таблицу, предоставляющую альтернативный метод просмотра информации в базе данных
(3) набор команд T-SQL, принимающих параметры и возвращающих результат
Диаграмма базы данных может использоваться для:
(1) изменения существующих таблиц
(2) управления доступом к базе данных
(3) добавления новых таблиц
(4) управления отношениями
(5) создания новых баз данных
filesС помощью данного шага можно настроить параметры:
(1) генерации отчета после выполнения плана
(2) сохранения истории сопровождения на локальном сервере
(3) включения в план резервного копирования журнала транзакций
Синтаксис на ограничения столбцов имеет вид:
(1) [CONSTRAINT <имя_ограничения>] [ [PRIMARY KEY | UNIQUE] [CLUSTERED | NONCLUSTERED] | [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] ]
(2) [CONSTRAINT <имя_ограничения>] [ [PRIMARY KEY | UNIQUE] [CLUSTERED | NONCLUSTERED] | [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] | [CHECK [NOT FOR REPLICATION] (<логическое выражение>)] ]
(3) [CONSTRAINT <имя_ограничения>] [ [[FOREIGN KEY] REFERENCES <ссылочная_таблица> (имя_столбца)] | [CHECK [NOT FOR REPLICATION] (<логическое выражение>)] ]
Роль Bulk Insert Administrators характеризуется тем, что:
(1) может управлять процессами, запущенными в SQL Server
(2) может выполнять операции вставки типа bulk insert
(3) может выполнять любые действия в SQL Server
Свойство identity может быть установлено:
(1) только для одного столбца в таблице
(2) для нескольких столбцов в таблице
(3) для всех целочисленных столбцов одновременно
filesДанное окно позволяет:
(1) указывать месторасположение правил относительно таблиц баз данных
(2) связывать правила со столбцами для таблицы
(3) связывать правила с базами данных
Синтаксис для связывания нескольких таблиц с помощью фразы FROM имеет вид:
(1) FROM <таблица_или_вид> <оператор_связывания> <таблица_или_вид> ON <условие_связывания> <оператор_связывания> <таблица_или_вид> ON <условие_связывания> . . n
(2) FROM { < таблицы_источник > } [ ,...n ]
(3) FROM <таблица_или_вид> <оператор_связывания> ON <условие_связывания> <оператор_связывания> ON <условие_связывания> . . n
Для DISTINCT существует обратное по действию ключевое слово:
(1) COMMON
(2) ALL
(3) SEPARATE
Резервирование журнала транзакций характеризуется тем, что:
(1) дает возможность восстанавливать состояние базы данных на определенный момент времени
(2) записывается только та информация, которая была изменена после полного последнего резервирования
(3) определяет точную копию базы данных на какой-либо момент времени
Некластерный индекс определяет:
(1) отдельный объект внутри базы данных, который указывает на определенные строки таблицы, но не устанавливает порядок их хранения
(2) отдельный объект внутри базы данных, который указывает на определенные строки таблицы и обязательно устанавливает порядок их хранения
(3) особый объект, который дает возможность устанавливать проверочные ограничения на один или несколько столбцов
В отношении много-ко-многим:
(1) каждая строка первой таблицы связана с нулем, одной или несколькими строками второй таблицы, а каждая строка второй таблицы может быть связана с нулем, одной или несколькими строками первой таблицы
(2) каждая строка таблицы связана с нулем, одной или несколькими строками другой таблицы
(3) каждая строка таблицы связана с нулем или одной строкой другой таблицы
Умолчания являются:
(1) объектами на уровне базы данных, которые могут быть применены к нескольким столбцам
(2) объектами на уровне таблиц, которые могут быть применены к одному столбцу
(3) временными таблицами, значения их которых подставляются в выбранные столбцы
Роль базы данных Security Administrator характеризуется тем, что:
(1) может управлять всеми полномочиями, объектами, ролями и элементами ролей пользователей
(2) имеет все полномочия в базе данных
(3) является ролью по умолчанию, к которой принадлежат все пользователи базы данных