Сохранение объектов конкретного пользователя БД
-only < имя пользователя >
Сохранять объекты заданного пользователя. Значение < имя пользователя > должно представлять имя конкретного пользователя БД или маску имен пользователей БД.
Маска допускает 2 представления:
-
маска заключается в двойные кавычки, не может содержать символа двойной кавычки, а символы '*' и '?' всегда трактуются как метасимволы;
-
любой символ маски, следующий за экранирующим символом '\' теряет своё специальное значение. Это позволяет задавать маски, содержащие символы '*', '?', '"', ' ', '.'. Также следует экранировать символы ',' и ';', чтобы отменить их специальное значение разделителя масок.
Примечание
Ключ -only
не действует на маску прав доступа пользователя, т.к. в маске
доступа < Пользователь >.< Объект > поле < Пользователь > имеет значение получателя
привилегий, а не владельца объекта. Владельцем объекта всегда является
пользователь, выполнявший сохранение этого объекта.
Пример
SQL >username SYSTEM/MANAGER8 SQL >create table T (i int); SQL >username ABC/12345678 SQL >create table T (i int); SQL >grant select on T to SYSTEM; lhb s -u SYSTEM/MANAGER8 -ot T !сохранит SYSTEM.T lhb s -u SYSTEM/MANAGER8 -ot T -takeforeign или lhb s -u SYSTEM/MANAGER8 -ot T -only или lhb s -u SYSTEM/MANAGER8 -ot T -only * !сохранит SYSTEM.T, ABC.T lhb s -u SYSTEM/MANAGER8 -ot T -only ABC !сохранит ABC.T lhb s -u SYSTEM/MANAGER8 -ot T -only ABC -takeforeign !сохранит ABC.T lhb s -u SYSTEM/MANAGER8 -ot SYSTEM.T,T -only ABC !сохранит SYSTEM.T, ABC.T lhb s -u SYSTEM/MANAGER8 -ot T -only SYSTEM,A* !сохранит SYSTEM.T, ABC.T
Примечание
Из примеров видно, что во всех случаях вместо ключа -takeforeign
можно
использовать ключ -only
(это справедливо и для ключа -own
при восстановлении
объектов БД).