Введение в модель данных SQL
Пусть имеется следующее определение домена:
CREATE DOMAIN TEST AS INTEGER DEFAULT 100 CHECK (VALUE > 0 AND VALUE != 150 AND VALUE < 200) CONSTRAINT (VALUE IS NOT NULL);
Пусть на этом домене определен столбец некоторой таблицы. Предположим, что в некоторый момент времени значениями данного столбца в строках таблицы являются значения {100, 120, 160}. Пусть после этого выполняется оператор
DROP DOMAIN TEST
Что произойдет при выполнении оператора?
Пусть в некоторой транзакции выполняются операции
CREATE ROLE R1 WITH ADMIN CURRENT_ROLE;GRANT R1 TO R2 WITH ADMIN OPTION GRANTED BY CURRENT_ROLE;
где R2 – имя некоторой существующей роли, и текущим именем роли сессии, в которой выполняется эта операция, является R. Пусть затем в некоторой другой транзакции, текущим именем роль которой является R2, выполняется операция
GRANT R1 TO R3 WITH ADMIN OPTION GRANTED BY CURRENT_ROLE;
где R3 – имя некоторой существующей роли. При каких из перечисленных ниже условий будет успешно выполнена операция?
REVOKE R1 FROM R3;
Пусть имеются следующие два определения индивидуальных типов:
CREATE TYPE EMP_NO_I AS INTEGER FINAL;CREATE TYPE EMP_NO_C AS CHAR(6);
Значениями обоих типов являются номера служащих, но в первом случае для представления номеров используются целые числа (по всей видимости, натуральные целые), а во втором – строки символов, изображающие натуральные числа. Предположим, что в таблице T1 определен столбец EMP_NO_1 типа EMP_NO_I, а таблице T2 – столбец EMP_NO_2 типа EMP_NO_C. Требуется выполнить эквисоединение таблиц T1 и T2 по значениям столбцов EMP_NO_1 и EMP_NO_2. Какие из приводимых ниже выражений являются правильными?
Пусть имеется следующее определение домена:
CREATE DOMAIN TEST AS INTEGER DEFAULT 100 CHECK (VALUE > 10 AND VALUE != 150 AND VALUE != 190 AND VALUE < 200);
Пусть на этом домене определен столбец некоторой таблицы. Предположим, что в некоторый момент времени значениями данного столбца в строках таблицы являются значения {100, NULL, 160}. Пусть после этого выполняется оператор
ALTER DOMAIN TEST SET DEFAULT 180 ADD CHECK (VALUE IS NOT NULL);
Что произойдет при выполнении оператора?
Пусть имеется следующее определение домена:
CREATE DOMAIN TEST AS INTEGER DEFAULT 100 CHECK (VALUE > 0 AND VALUE != 150 AND VALUE < 200) CONSTRAINT (VALUE IS NOT NULL);
Пусть на этом домене определен столбец некоторой таблицы. Какие из перечисленных значений не могут появиться в качестве значений этого столбца ни в одной строке таблицы?