База ответов ИНТУИТ

Введение в модель данных SQL

<<- Назад к вопросам

Пусть роль R1 создается путем выполнения операции

CREATE ROLE R1  WITH ADMIN CURRENT_ROLE;

и текущим именем роли сессии, в которой выполняется эта операция, является R. При каких из указанных ниже условий будет успешно выполнена операция?

GRANT R1 TO PUBLIC;

(Ответ считается верным, если отмечены все правильные варианты ответов.)

Варианты ответа
текущим именем роли сессии, в которой выполняется эта операция, является R
операция выполняется от имени идентификатора авторизации, которому была передана роль R с правом ее дальнейшей передачи(Верный ответ)
операция выполняется в тот момент, когда идентификатором авторизации является R(Верный ответ)
Похожие вопросы

Пусть в некоторой транзакции выполняются операции

CREATE ROLE R1  WITH ADMIN CURRENT_ROLE;GRANT R1 TO AUDIT WITH ADMIN OPTION   GRANTED BY CURRENT_ROLE;

и текущим именем роли сессии, в которой выполняется эта операция, является R. При каких из указанных ниже условий будет успешно выполнена операция?

DROP ROLE R1;

Пусть в некоторой транзакции выполняются операции

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;

Пусть пользователь с текущим именем роли role от имени authID1, равного текущему идентификатору пользователя userID1, создает объект o, становится его владельцем и, тем самым, обладателем привилегии pr по отношению к этому объекту. Далее, от имени этого authID1 привилегия pr передается роли role, а сама роль – текущему идентификатору пользователя userID2. После этого от имени роли role привилегия pr передается userID2. Какая из перечисленных ситуаций сложется после выполнения операции?

REVOKE role FROM userID2 CASCADE;

Пусть пользователь с текущим идентификатором пользователя userID1 от имени authID1, равного текущему имени роли role1, создает объект o, становится его владельцем и, тем самым, обладателем привилегии pr по отношению к этому объекту. Далее, от имени этого authID1 привилегия pr передается идентификатору пользователя userID1. Потом authID1 изменяется на userID1, и от его имени право на исполнение роли role1 передается роли с именем role2, являющемуся authID2 в некоторой сессии, текущим идентификатором пользователя которой является userID2. Наконец, от имени того же authID2 привилегия pr передается userID2. Что теперь произойдет, если от имени authID1 будет задана операция?

REVOKE PR ON o FROM userID2 CASCADE;

Пусть пользователь с текущим именем роли role1 от имени authID, равного текущему идентификатору пользователя userID, создает объект o, становится его владельцем и, тем самым, обладателем привилегии pr по отношению к этому объекту. Далее, от имени этого authID привилегия pr передается роли role1, а сама роль – роли role2. После этого роль role2 передается userID. Какая из перечисленных ситуаций сложется после выполнения операции?

REVOKE PR ON o FROM role1 CASCADE;

Пусть имеются следующие два определения представлений:

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 после материализации этих представлений были бы получены следующие таблицы:

RICH_DEPT
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24421208196014000.00NULL
24442177197017000.0016000.00
24452208195016000.0015000.00
24472177196020000.00NULL
24483101195518000.0017000.00
24503234196022000.0020000.00
24513155196022000.0020000.00
RICH_EMP
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24472177196020000.00NULL
24503234196022000.0020000.00
24513155196022000.0020000.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 после материализации этих представлений были бы получены следующие таблицы:

LA_EMP
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24401177195015000.0013000.00
24421208196014000.00NULL
24521155NULL15000.0014000.00
24442177197017000.0016000.00
24452208195016000.0015000.00
24462155197017000.0016000.00
24483101195518000.0017000.00
24493NULL195018000.0017000.00
LA_LA_EMP
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24421208196014000.00NULL
24452208195016000.0015000.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 после материализации этих представлений были бы получены следующие таблицы:

RICH_EMP
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24411155195516000.0014000.00
24521155NULL15000.0014000.00
24531234NULL17000.00NULL
24442177197017000.0016000.00
24462155197017000.0016000.00
24472177196020000.00NULL
24503234196022000.0020000.00
24513155196022000.0020000.00
LESS_RICH_EMP
EMP_NODEPT_NOPRO_NOEMP_BDATEEMP_SALEMP_BONUS
24521155NULL15000.0014000.00
24442177197017000.0016000.00
24462155197017000.0016000.00
24503234196022000.0020000.00
24513155196022000.0020000.00

Пусть над представлением RICH_EMP выполняется операция

UPDATE RICH_EMP SET EMP_SAL =  EMP_SAL + 10000.00,  EMP_BONUS = EMP_BONUS – 10000.00

Какие из приведенных ниже таблиц соответствуют материализованным представлениям RICH_EMP и LESS_RICH_EMP после выполнения этой операции?

Пусть имеются четыре мультимножества M1, M2, M3 и M4, содержащие общий элемента a, причем в мультимножестве M1 содержится n дубликатов a, в мультимножестве M2m дубликатов a, в мультимножестве M3k дубликатов, а в мультимножестве M4p дубликатов. Сколько дубликатов элемента a будет содержаться в результате операции (M1 INTERSECT M2) MINUS (M3 UNION M4)?
Пусть имеются три мультимножества M1, M2 и M3, содержащие общий элемент a, причем в мультимножестве M1 содержится n дубликатов a, в мультимножестве M2m дубликатов a, а в мультимножестве M3k дубликатов. Сколько дубликатов элемента a будет содержаться в результате операции (M1 MINUS M2) INTERSECT M3?