如何退出 PSQL CREATE FUNCTION 屏幕
Posted
技术标签:
【中文标题】如何退出 PSQL CREATE FUNCTION 屏幕【英文标题】:How to exit PSQL CREATE FUNCTION screens 【发布时间】:2016-06-01 23:19:54 【问题描述】:我是在 Postgres 中编写函数的新手..
我不想完全退出 PSQL,(我知道 CTRL+D 会这样做,)但我似乎卡在 CREATE FUNCTION 屏幕中。
mattswheels=# CREATE OR REPLACE FUNCTION 99_cents(money)
mattswheels-# RETURNS money
mattswheels-# LANGUAGE plpgsql
mattswheels-# LEAKPROOF
mattswheels-# AS $function$
mattswheels$# DECLARE
mattswheels$# new_price money;
mattswheels$# size int;
mattswheels$# BEGIN
mattswheels$# size := char_length(money);
mattswheels$# RETURN size;
mattswheels$# END;
mattswheels$#
mattswheels$# \q
mattswheels$# halp
mattswheels$# ;
mattswheels$# ;
mattswheels$# ;
mattswheels$# ;
mattswheels$# help
mattswheels$# ;
mattswheels$# \?
【问题讨论】:
注意:您的$function$
美元报价尚未结束。
那么我该如何结束呢?
postgresql.org/docs/9.1/static/sql-createfunction.html
What are '$$' used for in PL/pgSQL
【参考方案1】:
试试 CTRL+C。它会丢弃最后一个带有未终止引号的查询。
【讨论】:
【参考方案2】:首先,我发现 postgres 函数不能以数字开头。
ERROR: syntax error at or near ".99"
LINE 1: CREATE OR REPLACE FUNCTION public.99cents(money)
其次,要退出上述$function$
声明的问题,需要这样关闭:
$function$;
据我所知,没有其他按键可以退出 CREATE FUNCTION 屏幕,除非使用 CTRL+D 完全退出 PSQL。
【讨论】:
以上是关于如何退出 PSQL CREATE FUNCTION 屏幕的主要内容,如果未能解决你的问题,请参考以下文章