2013-04-20 5 views
0

Я создал функцию function_1() в Postgres.
Теперь я хочу создать другую аналогичную функцию function_2() и скопировать содержание function_1().Создайте новую функцию из существующей функции в Postgres?

Любая команда Postgres может это сделать?

До сих пор я использовал только скопировать & метод вставки в командной строке для создания function_2() (необходимо изменить имя функции, чтобы «function_2» после того, как паста)

ответ

3

Если вы используете GUI pgAdmin, вы можете просто выбрать функцию в обозревателе объектов и открыть обратный инженерный SQL-скрипт в окне SQL-редактора.

Существует специальный пункт в настройках, чтобы автоматизировать:

Параметры - инструмент запросов - Редактор запросов - Copy SQL из главного окна Инструмент запросов

3

pg_dump определение функции, или использовать функцию pg_get_functiondef, чтобы получить определение функции. Модификация зависит от вас.

Если вы пытаетесь программно создавать функции, вам может быть лучше с помощью команды EXECUTE PL/PgSQL и функции format для создания динамических функций.

Это довольно необычно, что нужно сделать это, предполагая, что вы, вероятно, делаете то, что намного легче сделать другим путем.

Смежные вопросы