Задания в тестовой форме

I. Вашему вниманию предлагаются задания, в которых могут быть 1, 2, 3 и более правильных ответов. Обвести кружком номера всех правильных ответов.

Задание 1. В процессе жизни базы данных наибольшим изменениям подвержены

1) Внешний ключ

2) Первичный ключ

3) Мощность отношения

4) Степень отношения

5) Схема отношения

Задание 2. Даны схемы отношений трех отношений

R1={№ книги, Имя автора}

R2={№ книги, Дата выдачи книги, № читательского билета}

R3={№ читательского билета, Имя читателя, № телефона}

Внешние ключи не содержат

1) 1 и 2 отношения

2) 1 и 3 отношения

3) 2 и 3 отношения

4) только 1 отношение

5) только 2 отношение

Задание 3. Не относится к Data Manipulation Language команда

1) INSERT

2) UPDATE

3) DROP

4) DELETE

5) SELECT

Задание 4.Предложение, которое позволяет исключить неопределенность из результата запроса

1) Mark<>NULL

2) Mark NOT NULL

3) Mark IS NOT NULL

4) Mark IS NULL

5) Mark = NULL

Задание 5. Операции удаления не препятствует наличие в предcтавлении

1) столбцов с агрегатными функциями.

2) Столбцов с выражениями.

3) Столбцов с признаком NOT NULL.

4) Столбцов, входящих в ограничение PRIMARY KEY.

5) Условий соединения.

Задание 6. Подзапрос в команде Select может иметь место в предложении

1) FROM

2) WHERE

3) GROUP BY

4) HAVING

5) ORDER BY

Задание 7. Только на уровне столбца действует ограничение

1) CHECK

2) UNIQUE

3) NOT NULL

4) PRIMARY KEY

5) FOREIGN KEY

Задание 8. Агрегатные функции могут использоваться в предложении

1) SELECT

2) WHERE

3) GROUP BY

4) HAVING

5) ORDER BY

Задание 9. При старте триггера FOR UPDATE создаются таблицы

1) INSERTED

2) UPDATED

3) DELETED

4) INSERTED и DELETED

5) UPDATED и DELETED

Задание 10. При реализации вывода имен и номеров зачеток студентов, не аттестованных по тем или иным предметам ошибка в синтаксисе команды допущена в строке

1) SELECT Student.NRecordBook, Stname ФИО

2) FROM Student, Progress

3) WHERE Student. NRecordBook= Progress. NRecordBook

4) AND MARK NULL;

Задание 11. Некорректной является команда

1) SELECT * from Progress Where mark = ANY(Select mark from Progress Where CodeSubject=1)

2) SELECT * from Progress Where mark ANY(Select mark from Progress Where CodeSubject=1)

3) SELECT * from Progress Where mark IN (Select mark from Progress Where CodeSubject=1)

4) SELECT mark from Progress Where mark>all(Select mark from Progress Where CodeSubject=1)

5) SELECT * from Progress Where mark>all(Select mark from Progress Where CodeSubject=1)

Задание 12. Предложение, которое не содержится в команде для вывода имен студентов, чьи оценки выше, чем средняя оценка в их группе.

1) FROM Student St,Progress Pr

2) FROM Progress P1,Student S1

3) GROUP BY CodeGroup

4) WHERE St.NRecordBook=Pr.NRecordBook

5) AND mark>

6) WHERE S1.IDGroup=St.IDGroup

7) SELECT AVG(mark)

8) AND S1.NRecordBook=P1.NRecordBook

9) SELECT Sname,Mark

Задание 13. В команде, редактирующей столбец MarkAVG таблицы Student, не используется предложение

1) SELECT AVG(Mark)

2) FROM Student

3) HAVING Student. NRecordBook= Progress. NRecordBook

4) UPDATE Student SET MarkAVG=

5) GROUP BY NRecordBook

6) FROM Progress

Задание 14. Агрегатные функции могут использоваться в предложении

1) where

2) having

3) select

4) order by

5) group by

Задание 15. Операции редактирования не препятствует наличие в представлении

1) столбцов с агрегатными функциями.

2) Столбцов с выражениями.

3) Столбцов с признаком not null.

4) Столбцов, входящих в ограничение primary key.

5) Условий соединения.

Задание 16. Выражение, являющееся истинным

1) В таблице может быть только один первичный ключ.

2) Внешний ключ может содержать атрибуты с признаком NULL.

3) Первичный ключ не может содержать атрибуты с признаком NULL.

4) Одна и та же комбинация столбцов не может быть объявлена одновременно в качестве уникального и первичного ключа.

5) Одна и та же комбинация столбцов может быть объявлена одновременно в качестве уникального и первичного ключа.

Задание 17. При добавлении столбца в таблицу корректна команда

1) ALTER TABLE Progress ALTER COLUMN Mark SmallInt NOT NULL;

2) ALTER TABLE Progress ADD COLUMN Mark SmallInt NOT NULL;

3) ALTER TABLE Progress ADD Mark SmallInt NOT NULL;

4) ALTER TABLE Progress ADD Mark SmallInt NOT NULL;

5) ALTER TABLE Progress ADD Mark SmallInt;

Задание 18. Команда, не являющаяся командой T-SQL

1) GO

2) SET

3) USE

4) EXEC

5) SELECT

Задание 19. В запросе - Вывести имена студентов, чьи оценки выше, чем средняя оценка в их группе, корректное выполнение команды обеспечивает порядок предложений.

1. SELECT AVG(mark)

2. WHERE St.NRecordBook=Pr.NRecordBook AND mark>

3. WHERE S1.IDGroup=St.IDGroup AND S1.NRecordBook=P1.NRecordBook

4. FROM Student St,Progress Pr

5. FROM Progress P1,Student S1

6. SELECT Sname,Mark

1) 6;4;1;3;5;2

2) 6;5;1;3;2;4

3) 6;5;4;2;1;3

4) 6;4;2;1;5;3

5) 6;4;4;2;1;3

Задание 20. Таблица SGroup была создана командой

CREATE TABLE Sgroup (IDGroup INT IDENTITY

CONSTRAINT SgroupPrimary PRIMARY KEY,

NameGroup Varchar(15)NOT NULL

CONSTRAINT SgroupNameGroupUnique UNIQUE)

Команда, позволяющая внести в таблицу данные о группе ИСТ-03, это

1) INSERT INTO SGroup VALUES('ИСТ-03')

2) INSERT INTO SGroup NameGroup VALUES('ИСТ-03')

3) INSERT INTO SGroup (IDGroup,NameGroup) VALUES('ИСТ-03')

4) INSERT INTO SGroup (IDGroup,NameGroup) VALUES('', 'ИСТ-03')

5) INSERT INTO SGroup (IDGroup,NameGroup) VALUES(@@IDENTITY, 'ИСТ-03')

II. Установить правильную последовательность:

Задание 1. В запросе, выводящем имена студентов, чьи оценки выше, чем средняя оценка в их группе

1) FROM Student St,Progress Pr

2) FROM Progress P1,Student S1

3) WHERE St.NRecordBook=Pr.NRecordBook

4) AND mark>

5) WHERE S1.IDGroup=St.IDGroup

6) SELECT AVG(mark)

7) AND S1.NRecordBook=P1.NRecordBook

8) SELECT StName,Mark

Задание 2. В команде, редактирующей столбец MarkAVG таблицы Student

1) SELECT AVG(Mark)

2) HAVING Student. NRecordBook= Progress. NRecordBook

3) UPDATE Student SET MarkAVG=

4) GROUP BY NRecordBook

5) FROM Progress

Задание 3. Действия при назначении внешнего ключа

1) задать тип ограничения

2) задать имя ограничения

3) указать ссылочную таблицу

4) перечислить столбцы, входящие во внешний ключ

5) определить столбцы, являющиеся первичным ключом ссылочной таблицы

Задание 4. Синтаксис оператора SELECT

1) select

2) order by

3) having

4) group by

5) список столбцов

6) where

7) from

III. Установить соответствие:

1. Название процедуры Назначение процедуры
  1) SP_HELP 2) sp_helptext 3) sp_depends 4) sp_rename a) переименования представления b) возврата сведений о созданном представлении c) для получения исходного текста представления d) нахождения списка таблиц, от которого зависит представление

ОТВЕТЫ: 1 _, 2 _, 3 _, 4 _.

2. Тип данных Описание  
  1) binary a) денежная величина  
  2) varchar b) данные времени и даты  
  3) int c) точные числовые данные  
  4) float d) числа с плавающей запятой  
  5) numeric e) целые значения  
  6) datetime f) строковые данные  
  7) money g) битовая информация  
ОТВЕТЫ: 1 _, 2 _, 3 _, 4 _, 5 _, 6 _, 7 _.
3. Ограничение целостности Описание
  1) Check 2) Null 3) Unique 4) Primary Key 5) Foreign Key 6) Cascade 7) Default a) условие на значение b) на определённость значения c) значение по умолчанию d) уникальность значений e) ссылочная целостность данных f) обновление значений в зависимых таблицах
 
 
 
 
 
 

ОТВЕТЫ: 1 _, 2 _, 3 _, 4 _, 5 _, 6 _, 7 _.

4. Агрегатная функция Результат действия
  1) SUM 2) AVG 3) MIN 4) MAX 5) COUNT 6) COUNT(*) a) сумма значений столбца b) среднее всех значений столбца c) наименьшее среди всех значений столбца d) наибольшее среди всех значений столбца e) количество значений, содержащихся в столбце f) количество строк в таблице результатов запроса

ОТВЕТЫ: 1 _, 2 _, 3 _, 4 _, 5 _, 6 _.

5. Ключевое слово Смысл ключевого слова
  1) PRIMARY KEY 2) FOREIGN KEY 3) UNIQUE 4) CHECK 5) REFERENCES a) столбец или столбцы, которые образуют первичный ключ таблицы b) столбец или столбцы, которые образуют внешний ключ таблицы c) таблица, связь с которой создаёт внешний ключ d) условие уникальности значений столбцов условие на проверку значения столбца

ОТВЕТЫ: 1 _, 2 _, 3 _, 4 _, 5 _.

IV. Дополнить:

1. Для задания в столбце неопределённых данных используется опция __________.
2. Принадлежность значения столбца к определённому диапазону значений проверяется с помощью ключевого слова ____________.
3. С помощью ключевого слова _____ указываются строки, значения которых совпадают с одним из значений в заданном списке.
4. Избежать вывода дублирующих строк позволяет ключевое слово _________________.
5. Сортируются строки в наборе, возвращаемом запросом с помощью директивы _______________.
6. Условие включения группы в итоговый набор содержит директива _________________.
7. Объединение результатов двух или более запросов в один результирующий набор достигается с помощью оператора__________.
8. Обновляет значение поля в строке оператор ___________.
9. Процесс, в котором все операторы выполняются успешно, или не выполняется ни один оператор называется _________________.
10. Таблица Progress содержит столбцы NRecordBook, IDSubject, IDReport, NTerm, Mark. Приведенная ниже процедура должна осуществлять ввод строки в таблицы Subject, Report и Progress. 1) Declare @ICS SmallInt, 2) @ICR SmallInt 3) Insert INTO Subject (NAMESUBJECT) VALUES ('ООП') 4) _____________________ 5) Insert INTO Report (NAMEReport) VALUES ('Экзамен') 6) _____________________ 7) INSERT INTO PROGRESS VALUES('050002',0,@ICS,@ICR,1,5)

Приложения

Приложение 1. Типы данных используемые СУБД SQL Server 2000

Тип данных Описание
     
1. VARCHAR (n) Символьная строка переменной длины, n задает максимальную длину строки в байтах. Максимально допустимый размер строки 2000 символов. Минимальный – 1 символ, n не является обязательным параметром и по умолчанию равно 1.
2. CHAR(n) Символьная строка фиксированной длины, n задает максимальную длину строки в байтах. Максимально допустимый размер строки 2000 символов. Минимальный –1 символ.
3. NUMERIC(p, s) DECIMAL(p,s) Число, содержащее точные числовые данные: всего p символов из них s после запятой.
4. REAL (FLOAT) Числовые значения с плавающей запятой обычной (двойной) точности, состоят из двух частей: мантиссы и порядка
5. DATETIME Дата и время в миллисекундах с 01.01.1753 по 31.12.9999.Сохраняет значение в 8 байтах
6. SMALLDATETIME Календарная дата с точностью до минуты. Сохраняет значение в 4 байтах. Диапазон с 01.01.1900 по 06.06.2079
7. MONEY (SMALLMONEY) Денежный тип данных размером 8 (4) байт. Имеют четыре разряда после запятой.
8. BINARY(n) VARBINARY(n) Последовательность 1 и 0, представленных в 16-ричной системе счисления и организованных в пары
9. INT BIGINT TINYINT SMALLINT Целочисленные значения (скалярные величины). Разница между этими типами данных заключается в длине сохраняемых значений
10. BIT Булевы значения 0 или 1
11. TEXT IMAGE Битовая и текстовая информация до 2 Гбайт

Приложение 2. Пример заполнения таблиц

Таблица Student (Студент)

Таблица SWork (Виды работ)


Таблица Subject (Предмет)

Таблица Report (Виды отчетности)

Таблица SGroup (Группа)

Таблица Teacher (Преподаватель)

Таблица Progress (Успеваемость)


Таблица UPlan(Учебный план)

Приложение 3. Агрегатные функции

Синтаксис функции Назначение функции
  AVG([ALL|DISTINCT] имя_столбца) Среднее значение в группе для [всех | неодинаковых] строк
  COUNT([ALL|DISTINCT] имя_столбца) Количество [всех | неодинаковых] значений в группе
  COUNT(*) Количество полученных строк в группе
  MAX(имя_столбца) Максимальное значение в группе
  MIN(имя_столбца) Минимальное значение в группе
  STDDEV(имя_столбца) Среднеквадратичное отклонение всех значений
  SUM([ALL|DISTINCT] имя_столбца) Сумма значений для [всех | неодинаковых] строк
  VAR(имя_столбца) Дисперсия всех значений

Приложение 4. Функции обработки дат

Синтаксис функции Назначение функции
1. dateadd (частьДаты, n, Date) Date – переменная типа Datetime. Функция добавляет к Date величину частьДаты, умноженную на n раз
2. dateDIFF (частьДаты, Date1, Date2) Функция возвращает количество величин частьДаты между двумя датами
3. dateName (частьДаты, Date) Функция возвращает название элемента частьДаты для заданного Date
4. dateName (частьДаты, Date) Функция возвращает целое числовое значение элемента частьДаты для заданного Date
5. DAY (Date) Функция возвращает целое число дней в Date
6. GETDATE () Функция возвращает текущие системные дату и время
7. MONTH (Date) Функция возвращает целое число месяцев в Date
8. YEAR (Date) Функция возвращает целое число лет в Date

Параметр частьДаты указывает функции, с какой частью переменной типа Datetime следует выполнить требуемые операции.

Приложение 5. Допустимые значения параметра частьДаты

Значение параметра Диапазон значений
1. dd (day) 1-31
2. dy (day of year) 1-366
3. hh (hour) 0-23
4. ms (millisecond) 0-999
5. mi (minute) 0-59
6. mm (month) 1-12
7. qq (quarter) 1-4
8. ss (second) 0-59
9. wk (week) 0-53
10. dw (weekday) 1-7 (Sun – Sut)
11. yy (year) 1753-9999

Список литературы

1. Дейт К. Введение в системы баз данных /К. Дейт.- 8-издание.-М.: Издательский дом «Вильямс», 2005. –1328 с.

2. Вьейра Р. SQL Server 2000. Программирование в 2 ч. /Р. Вьейра. – М: БИНОМ. Лаборатория знаний, 2004.

3. Конноли Т. Базы данных. Проектирование, реализация и сопровождение. Теория и практика / Т. Конноли, К. Бегг.- 3-издание. – М.: Издательский дом «Вильямс», 2003.

4. Мейер М. Теория реляционных баз данных / М. Мейер. - М.: Мир, 1987. 608 с.

5. Веймаер Р. Освой самостоятельно Microsoft SQL Server 2000 за 21 день / Р. Веймаер, Р. Сотел. – М.: Издательский дом «Вильямс», 2001.

6. Роб П. Системы баз данных: проектирование, реализация и управление / П. Роб, К. Коронел. – 5-издание. - СПб. БХВ – Петербург, 2004. -1040 с.

7. Ульман Д. Введение в основы баз данных / Д. Ульман, Д. Уидом. -М.: Издательство «Лори», 2000 –376 c.

8. Чен П. Модель "сущность-связь" - шаг к единому представлению о данных //СУБД. - 1995. - №3. - С.137-158.


Оглавление

Введение. 3

Лабораторная работа № 1. 3

Описание учебного примера. 3

Удаление таблиц. 3

Создание таблиц. 3

Имена ограничений. 3

Ограничения NULL и NOT NULL. 3

Ограничение PRIMARY KEY.. 3

Ограничение UNIQUE. 3

Ограничение FOREIGN KEY.. 3

Ограничение CHECK.. 3

Вопросы для самоконтроля к лабораторной работе № 1. 3

Лабораторная работа № 2. 3

Команда вставки - INSERT. 3

Команда обновления - UPDATE. 3

Команда удаления - DELETE. 3

Команда удаления - TRUNCATE. 3

Вопросы для самоконтроля к лабораторной работе № 2. 3

Лабораторная работа №3. 3

Команда ALTER TABLE. 3

Модификация ограничений. 3

Добавление ограничений с ограниченной областью проверки. 3

Отключение и подключение ограничений. 3

Правила для изменения и модификации описания столбцов. 3

Добавление столбца. 3

Модификация столбца. 3

Удаление столбца. 3

Удаление таблицы при наличии на нее ссылок. 3

Переименование таблицы.. 3

Вопросы для самоконтроля к лабораторной работе № 3. 3

Лабораторная работа № 4. 3

Выборка данных из нескольких таблиц. 3

Наиболее часто встречающиеся ошибки при реализации запросов на нескольких таблицах. 3

Определение условий выборки в предложении WHERE. 3

Групповые функции и предложение GROUP BY.. 3

Наиболее часто встречающиеся ошибки при выполнении GROUP BY. 3

Предложение ORDER BY.. 3

Вопросы для самоконтроля к лабораторной работе № 4. 3

Лабораторная работа № 5. 3

Подзапросы.. 3

Вопросы для самоконтроля к лабораторной работе № 5. 3

Лабораторная работа №6. 3

Представления. 3

Вопросы для самоконтроля к лабораторной работе № 6. 3

Лабораторная работа №7. 3

Хранимые процедуры.. 3

Оператор USE. 3

Оператор DECLARE. 3

Операторы SET и SELECT. 3

Функция @@IDENTITY.. 3

Функция @@ERROR.. 3

Объявление параметров. 3

Изменение хранимых процедур. 3

Удаление хранимой процедуры.. 3

Вопросы для самоконтроля к лабораторной работе № 7. 3

Лабораторная работа №8. 3

Cинтаксис команды создания триггера. 3

Cинтаксис команды ALTER TABLE. 3

Вопросы для самоконтроля к лабораторной работе № 8. 3

Задания в тестовой форме. 3

Приложения. 3

Список литературы.. 3


[1] При повторном создании таблицы следует удалить предыдущую версию таблицы, используя команду DROP TABLE Subject.

[2] Чтобы избежать корректировки таблиц, целесообразно предварительно продумать порядок создания таблиц: сначала создаются родительские (те, которые не содержат внешних ключей), затем дочерние таблицы (Progress и UPlan и т.д.).

[3] После такой принудительной вставки целесообразно снова выполнить команду SET IDENTITY_INSERT, но уже с опцией OFF.

[4] Подробно смотрите в пособии

[5] Если такое ограничение уже существует, то вам для апробации этой команды придется его удалить.

[6] ROWGUIDCOL –при определении в таблице столбца с этим свойством сервер автоматически использует для него ограничение по умолчанию, являющееся функцией NEWID(). Функция NEWID() генерирует новое значение глобального уникального идентификатора (GUID), значение которого уникально в пределах планеты, и подставляет его в добавляемую строку.

[7] Применение предложения GROUP BY является обязательным, в противном случае будет выдано сообщение об ошибке.

Server: Msg 8118

Column 'SG.NameGroup' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.

[8] Функция SUBSTRING выделяет подстроку заданного размера, начиная с указанного символа.

[9] Допускается до 255 уровней вложенности подзапросов.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: