База данных АВТОРЫ-КНИГИ-ИЗДАТЕЛЬСТВА
(AUTHORS-BOOKS-PUBLISHERS
) состоит из следующих таблиц:
AUTHORS |
---|
AUTHOR_ID : INTEGER |
AUTHOR_NAME : VARCHAR (20) |
AUTHOR_BDATE : DATE |
AUTHOR_ADDRESS : VARCHAR (40) |
AUTHOR_PICTURE : BLOB |
AUTHORS-BOOKS |
---|
ISBN : VARCHAR (20) |
AUTHOR_ID : INTEGER |
BOOKS |
---|
ISBN : VARCHAR (20) |
TITLE : VARCHAR (30) |
PUB_ID : INTEGER |
DATE_OF_AGREEMENT : DATE |
AGREEMENT_DURAT : INTERVAL |
DATE_OF_PUB : DATE |
PRICE : MONEY |
NUMBER_OF_PAGES : SMALLINT |
COVER_PICTURE : BLOB |
DESCR : CLOB |
PUBLISHERS |
---|
PUB_ID : INTEGER |
PUB_NAME : VARCHAR (20) |
PUB_ADDRESS : VARCHAR (40) |
Автор уникально идентифицируется своим идентификатором AUTHOR_ID
. Уникальным идентификатором книги является ISBN
(как выглядит ISBN
, можно посмотреть в выходных данных любой книги). Издательство идентифицируется уникальным идентификатором PUB_ID
. В таблицах AUTHORS
, BOOKS
и PUBLISHERS
столбцы AUTHOR_ID
, ISBN
и PUB_ID
соответственно являются первичными ключами. В таблице AUTHORS-BOOKS
столбцы AUTHOR_ID
и ISBN
являются внешними ключами, ссылающимися на первичные ключи таблиц AUTHORS
и BOOKS
соответственно. В таблице BOOKS
столбец PUB_ID
является внешним ключом, ссылающимся на первичный ключ таблицы PUBLISHERS
.
У каждой книги могут быть один или несколько авторов. Допускается, что авторы книги временно неизвестны. В таблице авторов могут содержаться данные только об авторах книг, описываемых в таблице BOOKS
. Каждая книга может быть издана только одним издательством, но для некоторых книг издательство может быть временно неизвестно. Столбец DATE_OF_AGREEMENT
содержит дату заключения договора на написание книги между автором и издательством. Столбец AGREEMENT_DURAT
содержит временной интервал, в течение которого действует договор. Столбец DATE_OF_PUB
содержит даты публикации книг.
Также будем использовать таблицы table1 (a1, a2, c1, c2)
и table2 (b1, b2, c1, c2)
со следующими телами:
table1
a1 | a2 | c1 | c2 |
---|---|---|---|
5 | 5 | 5 | 5 |
5 | 5 | 8 | 6 |
5 | 5 | 3 | 7 |
2 | 3 | NULL | 7 |
4 | NULL | NULL | NULL |
table2
b1 | b2 | c1 | c2 |
---|---|---|---|
5 | 5 | 5 | 5 |
1 | 2 | 5 | 6 |
3 | 8 | 5 | 5 |
3 | 8 | 5 | 5 |
8 | 8 | 8 | 8 |
3 | NULL | NULL | 5 |
3 | NULL | NULL | 5 |
Требуется сформулировать запрос "Для каждого издательства выдать название издательства, его адрес, среднюю и максимальную цены издававшихся книг и общее число издававшихся авторов". Какие из приведенных ниже формулировок являются правильными?
вопросПравильный ответ:
- # Пусть в базовой таблице S определен внешний ключ (a, b, c), где a, b и c – имена столбцов определяемой таблицы. Пусть для этого внешнего ключа специфицирован способ соответствия SIMPLE. Будем считать, что все столбцы целого типа и могут содержать неопределенное значение. Предположим, что внешний ключ ссылается на первичный ключ таблицы T, состоящий из столбцов с такими же именами. Пусть в таблице S присутствуют строки s1, s2 и s3 со значениями внешнего ключа <NULL, NULL, 5>, <25, 1, NULL> и <25, 1, 5> соответственно. Что произойдет при удалении строки из таблицы T со значением первичного ключа <25, 1, 5>, если при определении внешнего ключа (a, b, c) таблицы S указано ссылочное действие ON DELETE SET NULL?
- # База данных АВТОРЫ-КНИГИ-ИЗДАТЕЛЬСТВА (AUTHORS-BOOKS-PUBLISHERS) состоит из следующих таблиц: AUTHORS AUTHOR_ID : INTEGER AUTHOR_NAME : VARCHAR (20) AUTHOR_BDATE : DATE AUTHOR_ADDRESS : VARCHAR (40) AUTHOR_PICTURE : BLOB AUTHORS-BOOKS ISBN : VARCHAR (20) AUTHOR_ID : INTEGER BOOKS ISBN : VARCHAR (20) TITLE : VARCHAR (30) PUB_ID : INTEGER DATE_OF_AGREEMENT : DATE AGREEMENT_DURAT : INTERVAL DATE_OF_PUB : DATE PRICE : MONEY NUMBER_OF_PAGES : SMALLINT COVER_PICTURE : BLOB DESCR : CLOB PUBLISHERS PUB_ID : INTEGER PUB_NAME : VARCHAR (20) PUB_ADDRESS : VARCHAR (40) Автор уникально идентифицируется своим идентификатором AUTHOR_ID. Уникальным идентификатором книги является ISBN (как выглядит ISBN, можно посмотреть в выходных данных любой книги). Издательство идентифицируется уникальным идентификатором PUB_ID. В таблицах AUTHORS, BOOKS и PUBLISHERS столбцы AUTHOR_ID, ISBN и PUB_ID соответственно являются первичными ключами. В таблице AUTHORS-BOOKS столбцы AUTHOR_ID и ISBN являются внешними ключами, ссылающимися на первичные ключи таблиц AUTHORS и BOOKS соответственно. В таблице BOOKS столбец PUB_ID является внешним ключом, ссылающимся на первичный ключ таблицы PUBLISHERS. У каждой книги могут быть один или несколько авторов. Допускается, что авторы книги временно неизвестны. В таблице авторов могут содержаться данные только об авторах книг, описываемых в таблице BOOKS. Каждая книга может быть издана только одним издательством, но для некоторых книг издательство может быть временно неизвестно. Столбец DATE_OF_AGREEMENT содержит дату заключения договора на написание книги между автором и издательством. Столбец AGREEMENT_DURAT содержит временной интервал, в течение которого действует договор. Столбец DATE_OF_PUB содержит даты публикации книг. Требуется сформулировать запрос "Найти ISBN и имена авторов книг, в название которых входит хотя бы одна цифра". Какие из приведенных ниже формулировок являются правильными?
- # Требуется сформулировать запрос “Найти названия издательств и имена авторов, которые опубликовали в данном издательстве самую дорогую книгу”. Какие из приведенных ниже формулировок являются правильными?
- # Пусть имеется следующее дерево: [Большая Картинка] Какой из следующих обходов этого дерева является обходом в глубину?
- # Пусть одновременно выполняются три транзакции: T1 = (ST1(c), SPT1(spn1), IT1(c), SPT1(spn2), DT1(c), ST1(c), RBT1(spn2), ST1(c), RBT1(spn1), DT1(c), COMMITT1), T2 = (ST2(c), UT2(c), SPT2(spn2), DT2(c), ST2(c), RBT2(spn2), ST2(c), COMMITT2), T3 = (ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), DT3(c), COMMITT3). Какие из указанных ниже реальных последовательностей выполнения операций соответствуют уровню изоляции SERIALIZABLE?