Пусть роль
R1
создается путем выполнения операцииCREATE ROLE R1 WITH ADMIN CURRENT_ROLE; и текущим именем роли сессии, в которой выполняется эта операция, является
R
. При каких из указанных ниже условий будет успешно выполнена операция?GRANT R1 TO PUBLIC;
R
 
R
 
R
с правом ее дальнейшей передачи 
Отсутствие каких привилегий должно проверяться для гарантии того, что от имени текущегоauthID
нельзя выполнить операциюSELECT * FROM T
?
SELECT
для таблицы T
у текущего authID
 
SELECT
для таблицы T
у текущего authID
и всех переданных ему ролей 
SELECT
для таблицы T
у текущего authID
, у всех переданных ему ролей, у всех ролей, переданных этим ролям, и т.д. 
Пусть одновременно выполняются три транзакции:T1 = (ST1(c), SPT1(spn1), IT1(c), DT1(c), ST1(c), RBT1(spn1), COMMITT1)
,T2 = (ST2(c), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), COMMITT2)
,T3 = (ST3(c), COMMITT3)
. Какие из указанных ниже реальных последовательностей выполнения операций соответствуют уровню изоляцииSERIALIZABLE
?
ST1(c), ST2(c), ST3(c), SPT1(spn1), IT1(c), DT1(c), ST1(c), RBT1(spn1), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), COMMITT1, COMMITT2, COMMITT3
 
ST3(c), COMMITT3, SPT1(spn1), IT1(c), DT1(c), ST2(c), SPT2(spn2), UT2(c), ST1(c), RBT1(spn1), COMMITT1, ST2(c), RBT2(spn2), COMMITT2
 
ST1(c), SPT1(spn1), IT1(c), DT1(c), ST1(c), RBT1(spn1), ST2(c), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), ST3(c), COMMITT3, COMMITT1, COMMITT2
 
Пусть пользователь с текущим именем роли
role1
от имениauthID
, равного текущему идентификатору пользователяuserID
, создает объектo
, становится его владельцем и, тем самым, обладателем привилегииpr
по отношению к этому объекту. Далее, от имени этогоauthID
привилегияpr
передается ролиrole1
, а сама роль – ролиrole2
. После этого рольrole2
передаетсяuserID
. Какая из перечисленных ситуаций сложется после выполнения операции?REVOKE PR ON o FROM role1 CASCADE;
pr
аннулируется у role1
, role2
и userID
 
pr
аннулируется у role1
и role2
 
pr
аннулируется у role1
и role2
, role2
лишится права исполнять role1
, а userID
лишится права исполнять роль role2
 
Какими минимальными привилегиями должен обладать текущийauthID
, чтобы от его имени можно было создать некоторое представлениеV
и впоследствии передатьALL PRIVILEGES
дляV
некоторому другомуauthID
?
V
, включая привилегии на передачу всех привилегий 
SELECT
для всех базовых таблиц и представлений, над которыми определено представление V
 
SELECT
для всех базовых таблиц и представлений, над которыми определено представление V
, включая привилегии на передачу этих привилегий 
Пусть одновременно выполняются три транзакции:T1 = (ST1(c), SPT1(spn1), IT1(c), RBT1(spn1), DT1(c), ST1(c), RBT1(spn1), DT1(c), COMMITT1)
,T2 = (ST2(c), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), ST2(c), COMMITT2)
,T1 = (ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), COMMITT3)
. Какие из указанных ниже реальных последовательностей выполнения операций соответствуют уровню изоляцииSERIALIZABLE
?
ST1(c), SPT1(spn1), IT1(c), RBT1(spn1), ST2(c), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), DT1(c), ST1(c), RBT1(spn1), ST2(c), COMMITT2, DT1(c), COMMITT1, COMMITT3
 
ST1(c), SPT1(spn1), IT1(c), ST2(c), SPT2(spn2), UT2(c), ST2(c), RBT2(spn2), RBT1(spn1), DT1(c), ST1(c), RBT1(spn1), DT1(c), COMMITT1, ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), COMMITT3, ST2(c), COMMITT2
 
ST1(c), SPT1(spn1), ST2(c), SPT2(spn2), ST3(c), SPT3(spn3), IT1(c), RBT1(spn1), UT2(c), ST2(c), RBT2(spn2), UT3(c), RBT3(spn3), DT1(c), ST1(c), RBT1(spn1), ST2(c), COMMITT2, COMMITT3, DT1(c), COMMITT1
 
Пусть в некоторой транзакции выполняются операции
CREATE ROLE R1 WITH ADMIN CURRENT_ROLE; GRANT R1 TO AUDIT WITH ADMIN OPTION GRANTED BY CURRENT_ROLE; и текущим именем роли сессии, в которой выполняется эта операция, является
R
. При каких из указанных ниже условий будет успешно выполнена операция?DROP ROLE R1;
R
 
R1
 
R
 
Пусть транзакцияT
выполняется на уровне изоляцииREPEATABLE READ
. После выполнения какого из перечисленных ниже операторов выборки в транзакцииT
может проявиться эффект фантомов?
"SELECT * FROM EMP WHERE EMP_NO = 4441;"
и результат операции не пуст 
"SELECT * FROM EMP WHERE EMP_NO = 4441;"
и результат операции пуст 
"SELECT * FROM EMP WHERE EMP_NO = 4441 OR DEPT_NO = 632;"
 
Пусть одновременно выполняются три транзакции:T1 = (IT1(c), ST1(c), DT1(c), COMMITT1)
,T2 = (ST2(c), UT2(c), ST2(c), COMMITT2)
,T3 = (ST3(c), COMMITT3)
. Какие из указанных ниже реальных последовательностей выполнения операций соответствуют уровню изоляцииSERIALIZABLE
?
ST3(c), ST2(c), COMMITT3, UT2(c), ST2(c), COMMITT2, IT1(c), ST1(c), DT1(c), COMMITT1
 
IT1(c), ST1(c), DT1(c), COMMITT1, ST2(c), ST3(c), COMMITT3, UT2(c), ST2(c), COMMITT2
 
IT1(c), ST1(c), ST3(c), ST2(c), COMMITT3, UT2(c), ST2(c), COMMITT2, DT1(c), COMMITT1
 
Пусть в некоторой транзакции выполняются операции
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;
R
 
R2
 
authID
, являющимся именем роли R
или R2
 
Пусть пользователь с текущим идентификатором пользователя
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;
userID2
лишится привилегии pr
, но она останется у role1
, role2
и userID1
 
pr
сохранится только у role1
 
Пусть одновременно выполняются три транзакции: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
?
ST1(c), SPT1(spn1), IT1(c), SPT1(spn2), DT1(c), ST1(c), RBT1(spn2), ST1(c), RBT1(spn1), ST2(c), UT2(c), SPT2(spn2), DT2(c), ST2(c), RBT2(spn2), ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), ST2(c), COMMITT2, DT3(c), COMMITT3, DT1(c), COMMITT1
 
ST1(c), ST2(c), ST3(c), SPT3(spn3), SPT1(spn1), UT2(c), SPT2(spn2), DT2(c), ST2(c), RBT2(spn2), IT1(c), SPT1(spn2), DT1(c), ST1(c), RBT1(spn2), ST1(c), RBT1(spn1), UT3(c), RBT3(spn3), DT3(c), COMMITT3, DT1(c), COMMITT1, ST2(c), COMMITT2
 
ST1(c), SPT1(spn1), IT1(c), SPT1(spn2), DT1(c), ST1(c), RBT1(spn2), ST2(c), UT2(c), SPT2(spn2), DT2(c), ST2(c), RBT2(spn2), ST3(c), SPT3(spn3), UT3(c), RBT3(spn3), ST1(c), RBT1(spn1), DT1(c), COMMITT1, ST2(c), COMMITT2, DT3(c), COMMITT3
 
Что произойдет, если производится попытка передачи нескольких привилегий с передачей привилегии на передачу привилегий, но текущий authID
обладает привилегией на передачу только части этих привилегий?
WITH GRANT OPTION
 
WITH GRANT OPTION
 
Пусть пользователь с текущим именем роли
role
от имениauthID1
, равного текущему идентификатору пользователяuserID1
, создает объектo
, становится его владельцем и, тем самым, обладателем привилегииpr
по отношению к этому объекту. Далее, от имени этогоauthID1
привилегияpr
передается ролиrole
, а сама роль – текущему идентификатору пользователяuserID2
. После этого от имени ролиrole
привилегияpr
передаетсяuserID2
. Какая из перечисленных ситуаций сложется после выполнения операции?REVOKE role FROM userID2 CASCADE;
userID2
не будет ни привилегии pr
, ни роли role
 
userID2
останется привилегия pr
, но не будет роли role
 
pr
аннулируется у userID2
и role
 
При каких уровнях изоляции транзакции в ней не допускается чтение объекта базы данных, изменявшегося еще не завершенной транзакцией?
READ COMMITTED
 
REPEATABLE READ
 
READ COMMITTED
, REPEATABLE READ
и SERIALIZABLE