Введение в модель данных SQL
Пусть имеются следующие два определения представлений:
CREATE VIEW RICH_DEPT AS SELECT * FROM EMP WHERE (SELECT AVG (E.EMP_SAL) FROM EMP E WHERE E.DEPT_NO = EMP.DEPT_NO) > (SELECT AVG (E.EMP_SAL) FROM EMP E WHERE E.PRO_NO = EMP.PRO_NO);
и
CREATE VIEW RICH_EMP AS SELECT * FROM RICH_DEPT WHERE EMP_SAL > (SELECT AVG (E.EMP_SAL + E.EMP_BONUS) FROM EMP E WHERE E.DEPT_NO = EMP.DEPT_NO);
При принятом в этих упражнениях примерном составе строк таблицы EMP после материализации этих представлений были бы получены следующие таблицы:
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2442 | 1 | 208 | 1960 | 14000.00 | NULL |
2444 | 2 | 177 | 1970 | 17000.00 | 16000.00 |
2445 | 2 | 208 | 1950 | 16000.00 | 15000.00 |
2447 | 2 | 177 | 1960 | 20000.00 | NULL |
2448 | 3 | 101 | 1955 | 18000.00 | 17000.00 |
2450 | 3 | 234 | 1960 | 22000.00 | 20000.00 |
2451 | 3 | 155 | 1960 | 22000.00 | 20000.00 |
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2447 | 2 | 177 | 1960 | 20000.00 | NULL |
2450 | 3 | 234 | 1960 | 22000.00 | 20000.00 |
2451 | 3 | 155 | 1960 | 22000.00 | 20000.00 |
Пусть над представлением RICH_EMP выполняется операция
UPDATE RICH_EMP SET EMP_SAL = EMP_SAL - 10000.00
Какие из приведенных ниже таблиц соответствуют материализованным представлениям RICH_DEPT и RICH_EMP после выполнения этой операции?
Пусть имеются следующие два определения представлений:
CREATE VIEW LA_EMP AS SELECT * FROM EMP WHERE EMP_SAL < (SELECT AVG (E.EMP_SAL) FROM EMP E WHERE E.DEPT_NO = EMP.DEPT_NO);
и
CREATE VIEW LA_LA_EMP AS SELECT * FROM LA_EMP WHERE EMP_SAL < (SELECT AVG (E.EMP_SAL) FROM LA_EMP E WHERE E.DEPT_NO = LA_EMP.DEPT_NO);
При принятом в этих упражнениях примерном составе строк таблицы EMP после материализации этих представлений были бы получены следующие таблицы:
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2440 | 1 | 177 | 1950 | 15000.00 | 13000.00 |
2442 | 1 | 208 | 1960 | 14000.00 | NULL |
2452 | 1 | 155 | NULL | 15000.00 | 14000.00 |
2444 | 2 | 177 | 1970 | 17000.00 | 16000.00 |
2445 | 2 | 208 | 1950 | 16000.00 | 15000.00 |
2446 | 2 | 155 | 1970 | 17000.00 | 16000.00 |
2448 | 3 | 101 | 1955 | 18000.00 | 17000.00 |
2449 | 3 | NULL | 1950 | 18000.00 | 17000.00 |
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2442 | 1 | 208 | 1960 | 14000.00 | NULL |
2445 | 2 | 208 | 1950 | 16000.00 | 15000.00 |
Пусть над представлением LA_LA_EMP выполняется операция
UPDATE LA_LA_EMP SET EMP_SAL = EMP_SAL + 10000.00
Какие из приведенных ниже таблиц соответствуют материализованным представлениям LA_LA_EMP и LA_EMP после выполнения этой операции?
Пусть имеются следующие два определения представлений:
CREATE VIEW RICH_EMP AS SELECT * FROM EMP WHERE EMP_SAL = (SELECT MAX (E.EMP_SAL) FROM EMP E WHERE E.DEPT_NO = EMP.DEPT_NO) OR EMP_BONUS = (SELECT MAX (E.EMP_BONUS) FROM EMP E WHERE E.DEPT_NO = EMP.DEPT_NO);
и
CREATE VIEW LESS_RICH_EMP AS SELECT * FROM RICH_EMP WHERE EMP_SAL + EMP_BONUS = (SELECT MIN (RE.EMP_SAL + RE.EMP_BONUS) FROM RICH_EMP RE WHERE RE.DEPT_NO = RICH_EMP.DEPT_NO);
При принятом в этих упражнениях примерном составе строк таблицы EMP после материализации этих представлений были бы получены следующие таблицы:
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2441 | 1 | 155 | 1955 | 16000.00 | 14000.00 |
2452 | 1 | 155 | NULL | 15000.00 | 14000.00 |
2453 | 1 | 234 | NULL | 17000.00 | NULL |
2444 | 2 | 177 | 1970 | 17000.00 | 16000.00 |
2446 | 2 | 155 | 1970 | 17000.00 | 16000.00 |
2447 | 2 | 177 | 1960 | 20000.00 | NULL |
2450 | 3 | 234 | 1960 | 22000.00 | 20000.00 |
2451 | 3 | 155 | 1960 | 22000.00 | 20000.00 |
EMP_NO | DEPT_NO | PRO_NO | EMP_BDATE | EMP_SAL | EMP_BONUS |
---|---|---|---|---|---|
2452 | 1 | 155 | NULL | 15000.00 | 14000.00 |
2444 | 2 | 177 | 1970 | 17000.00 | 16000.00 |
2446 | 2 | 155 | 1970 | 17000.00 | 16000.00 |
2450 | 3 | 234 | 1960 | 22000.00 | 20000.00 |
2451 | 3 | 155 | 1960 | 22000.00 | 20000.00 |
Пусть над представлением RICH_EMP выполняется операция
UPDATE RICH_EMP SET EMP_SAL = EMP_SAL + 10000.00, EMP_BONUS = EMP_BONUS – 10000.00
Какие из приведенных ниже таблиц соответствуют материализованным представлениям RICH_EMP и LESS_RICH_EMP после выполнения этой операции?
Пусть имеются следующие два определения индивидуальных типов:
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 > 0 AND VALUE != 150 AND VALUE < 200) CONSTRAINT (VALUE IS NOT NULL);
Пусть на этом домене определен столбец некоторой таблицы. Предположим, что в некоторый момент времени значениями данного столбца в строках таблицы являются значения {100, 120, 160}. Пусть после этого выполняется оператор
DROP DOMAIN TEST
Что произойдет при выполнении оператора?