Как взять скрипт для схемы таблиц, хранимые процедуры Oracle через инструмент SQL Developer (интерфейс командной строки SQLPLUS)?Oracle - Как сгенерировать скрипт из sql-разработчика
ответ
использовать DBMS_METADATA пакет, как описано here
Если вы хотите увидеть DDL для объектов, вы можете использовать
select dbms_metadata.get_ddl('OBJECT_TYPE','OBJECT_NAME','OBJECT_OWNER')
from dual
/
Например, это даст вам сценарий DDL для emp
таблицы.
select dbms_metadata.get_ddl('TABLE','EMP','HR')
from dual
/
Вы, возможно, потребуется установить формат long
типа с большим числом. Для пакетов вам необходимо получить доступ к таблицам dba_source, user_source, all_source
. Вы можете запросить имя и тип объекта, чтобы узнать, какой код хранится.
Основной ответ: «использовать пакет dbms_metadata». Акционерный вопрос:
Но что, если я хочу сгенерировать скрипт для всех таблиц за раз?
И ответ, по-видимому, является опрашивать каталог системы для имен и владельцев всех таблиц:
SELECT dbms_metadata.get_ddl('TABLE', s.tabname, s.tabowner)
FROM system_catalog_describing_tables AS s
WHERE ...any conditions that are needed...
Я не достаточно знаком с Oracle знать системный каталог. В Informix, который я знаю, если предположить, что существует процедура dbms_metadata.get_ddl
, запрос будет:
SELECT dbms_metadata.get_ddl('TABLE', s.tabname, s.owner)
FROM "informix".systables AS s
WHERE tabid >= 100 AND tabtype = 'T';
В Informix, tabids менее 100 зарезервированы для системного каталога, а не-таблицы (представления, синонимы , последовательности и несколько других эзотерических вещей) исключаются из-за необходимости использования «табуляции».
В Oracle местоположение, содержащее информацию обо всех объектах базы данных, включая таблицы и хранимые процедуры, называется Словарем данных. Это набор представлений, который предоставляет вам доступ к метаданным, определяющим базу данных. Вы можете запросить представления словаря данных для списка желаемых объектов базы данных, а затем использовать функции, доступные в пакете dbms_metadata
, чтобы получить DDL для каждого объекта. Альтернативой является исследование поддержки в dbms_metadata
для экспорта DDL для коллекции объектов.
За несколько указателей, например, чтобы получить список таблиц, вы можете использовать следующий словарь данных рассматривает
user_tables
содержит все таблицы, принадлежащие пользователюall_tables
содержит все таблицы, которые доступны пользователь- и так далее ...
Я не знал о DMBS_METADATA, но ваши ответы побудили меня создать utility to script all objects owned by an Oracle user.
Не работает для меня. Требуется сборка DDTek.Oracle (поставщик данных от datadirect.com). –
Это именно то, что я искал, так что спасибо – Asaf
Если у вас длинный список java sp, который вы обычно не хотите сценаризировать, это кошмар. –
Что значит «sp»? –
Oracle SQL Developer> View> DBA> Выбрать подключение> Expand> Безопасность> Пользователи> Щелкните правой кнопкой мыши вашего пользователя> Создать как> Заполните поля> Копировать SQL скрипт> Закрыть
Если ваш пользователь имеет права на объекты, сделайте это также
Oracle SQL Developer> View> DBA> Выберите ваше соединение> Развернуть> Безопасность> Пользователи> Дважды щелкните по вашему пользователю> Объект Privs> Выбрать все данные> Щелкните правой кнопкой мыши> Экспорт> Экспорт как текстовый файл
Редактируйте этот текстовый файл, чтобы предоставить объектные привилегии вашему пользователю.
Это работает для меня:
- В SQL Developer, щелкните правой кнопкой мыши на объект, который вы хотите создать скрипт для. то есть имя таблицы
- Выберите «Быстрая библиотека DLL»> «Сохранить в файл»
- Затем будет записан оператор create во внешний файл sql.
Примечание. Вы также можете выделить несколько объектов одновременно, чтобы вы могли сгенерировать один скрипт, содержащий инструкции create для всех таблиц в базе данных.
Хороший ответ. Одно небольшое разъяснение. По крайней мере, в текущей версии SQL Developer, если вы выберете несколько хранимых процедур и сделаете «Quick DDL», вы не получите тело SP. Для этого вам нужно открыть несколько хранимых процедур, чтобы вы могли увидеть часть дерева, которая ссылается на Тело, и выберите несколько из них, а затем выполните «Быстрый DDL». Спасибо за ответ - именно то, что я искал. – glaucon
Это работает для меня:
PL SQL Developer -> Инструменты -> Экспорт пользовательских объектов
Выберите флажков: Включить привилегии и Включить хранение
Выберите имя файла. Хит экспорт.
Впоследствии вы можете использовать сгенерированный файл экспорта для создания таблицы в другой схеме.
Разработчик SQL и разработчик PL/SQL - это разные программы. –
работал в PL SQL Developer. –
Ставка 1. select * from <tablename>;
стадия 2. просто щелкните правой кнопкой мыши на вашем выходе (т. е. данные), затем перейдите к последнему варианту экспорта, он даст вам некоторое расширение, затем нажмите на требуемое расширение, а затем примените. u получит новый файл, включая данные.
- 1. Как сгенерировать скрипт
- 2. Oracle - Как сгенерировать DDL-скрипт от разработчика SQL ПРОГРАММА?
- 3. Как сгенерировать скрипт INSERT из результата?
- 4. как сгенерировать конфигурационный скрипт - Linux
- 5. EF - Сгенерировать скрипт из предыдущей миграции
- 6. Как сгенерировать скрипт install4j от установщика?
- 7. Как сгенерировать скрипт вставки из таблицы в DB2
- 8. Как сгенерировать скрипт из файла .mdf в SQL Server 2008?
- 9. Как сгенерировать идентификатор для сущности из существующей последовательности ORACLE?
- 10. Как сгенерировать файл vCard через скрипт python?
- 11. Сгенерировать скрипт Вставить в .net
- 12. Как сгенерировать dbca.rsp для oracle db?
- 13. Как сгенерировать весь DDL схемы Oracle (скриптовый)?
- 14. Как сгенерировать SQL-результаты на лист Excel (Oracle)
- 15. Можно ли запустить скрипт Oracle из Groovy?
- 16. Oracle: динамически выбирать скрипт
- 17. Сгенерировать XML-документ в PL/SQL из таблиц Oracle
- 18. Скрипт Google Apps не может сгенерировать изображение из EmbeddedChartBuilder
- 19. Сгенерировать HTML-скрипт через программирование в asp.net
- 20. Попытка сгенерировать список, используя скрипт python
- 21. Сгенерировать скрипт Все индексы в базе данных
- 22. Вторая попытка сгенерировать скрипт sql-скрипт не работает
- 23. Скрипт для извлечения ДАННЫЕ -Oracle
- 24. Сгенерировать код C# для таблицы Oracle
- 25. Strongloop Oracle, подключающийся через скрипт
- 26. Сгенерировать дополнительные записи в операторе Select Oracle
- 27. Как сгенерировать скрипт CREATE для нескольких таблиц в pgAdmin III?
- 28. как запустить скрипт oracle с использованием php
- 29. Как сгенерировать класс из интерфейса
- 30. Как сгенерировать SQL из запроса?
Долгое упоминание здесь - вот что. "set long 200000 страниц 0 строк 131" – Nap