Как пользователь, не являющийся администратором базы данных, как я могу передать сценарии другим пользователям, которые работают в своей собственной схеме?

Вот моя ситуация. Я не пользователь DBA в базе данных Oracle. Поэтому у меня есть только привилегии DDL и DML для моей собственной схемы, поэтому я могу создавать, удалять, обновлять и т. Д. Только для таблиц в моей собственной схеме.

Допустим, я пишу скрипт, который создает и обновляет таблицы в моей собственной схеме (давайте назовем схему USER1). Когда придет день, когда я покину компанию и мне нужно передать этот сценарий моей замене (скажем, USER2), как мне это сделать, если сценарий работает только для USER1? Действительно ли USER2 должен пройти через мой скрипт и заменить все ссылки на USER1 на USER2?

Дело в том, что я действительно хотел бы, чтобы мой скрипт работал независимо от того, какой пользователь запускает его без необходимости возиться с ним.

1 ответ

Решение

Во-первых, если это производственный скрипт, который создает таблицы для приложения и манипулирует его данными, он, вероятно, должен запускаться не от вашего собственного пользователя, а от какого-то отдельного рабочего пользователя.

В любом случае, если вы запускаете скрипт в своей собственной схеме, ему не нужно явно ссылаться на него. Просто удалите ссылки на схему, и все объекты будут созданы под пользователем, который ее запускает, а это означает, что любой пользователь может запустить его из своей учетной записи (при условии, что у него есть базовые разрешения DML/DDL, требуемые сценарием).

Другие вопросы по тегам