Импорт файла sql новому пользователю вызывает ошибку недостаточных привилегий в sqldeveloper

Я создал пользователя в AWS oracle RDS и получил свои таблицы, функции и весь другой код. Поскольку мне нужна была такая же реплика этой структуры БД, я экспортировал ее в файл sql с помощью SQL Developer. Создан другой пользователь и теперь вы хотите импортировать файл sql этому новому пользователю, но выдает ошибку недостаточных прав.

ORA-01031: недостаточные привилегии

  1. 00000 - "недостаточные привилегии"

* Причина: была сделана попытка выполнить операцию с базой данных без необходимых привилегий.

* Действие: попросите администратора базы данных или назначенного администратора безопасности предоставить вам необходимые привилегии.

Я предоставил пользователю права. Это из-за пользователя user1, который присутствует в операторе создания таблицы?

CREATE TABLE "user1"."MBOMCOMPONENTS" ( "COMPONENTNO" VARCHAR2(14 BYTE), "PLANT" VARCHAR2(50 BYTE) )

Не могли бы вы помочь. Спасибо, Манджу

1 ответ

CREATE TABLE"user1"."MBOMCOMPONENTS" ( "COMPONENTNO" VARCHAR2(14 BYTE), "PLANT" VARCHAR2(50 BYTE))`

Этот оператор создает таблицу в "user1"схема. Команда завершится ошибкой, если текущая схема не"user1" а текущий пользователь не имеет права CREATE ANY TABLE.

как у нас могут быть разные пользователи с одинаковой схемой и разными данными?

Схема - это набор объектов, принадлежащих пользователю. Схема имеет то же имя, что и пользователь, которому она принадлежит. Чтобы достичь своей цели, все, что вам нужно сделать, это удалить"user1". из всех операторов SQL, затем запустите сценарий как USER2 (или как-то еще).

Для справки в будущем инструмент DDL экспорта SQL Developer имеет флажок для включения имени схемы; по умолчанию он отмечен (т.е. включен), но мы можем отключить его, если захотим запускать скрипты от имени разных пользователей.

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