CREATE [ OR REPLACE ] PROCEDURE <name> ( [ <arg_name> <arg_data_type> ] [ , ... ] )
RETURNS <result_data_type> [ NOT NULL ]
LANGUAGE JAVASCRIPT
[ { CALLED ON NULL INPUT | { RETURNS NULL ON NULL INPUT | STRICT } } ]
[ VOLATILE | IMMUTABLE ]
[ COMMENT = '<string_literal>' ]
[ EXECUTE AS { CALLER | OWNER } ]
AS '<procedure_definition>'
根据该语法,它是强制性的。但是您的返回值可以只是静态varchar,而不是来自查询结果。如果过程中没有返回任何内容,则甚至为NULL。
例如,如下所示(返回NULL)
CREATE OR REPLACE PROCEDURE testproc()
RETURNS varchar
LANGUAGE JAVASCRIPT AS
'var sqlcommand =
`INSERT INTO foo (bar) VALUES (999);`
snowflake.execute({sqlText: sqlcommand});
';
但是最好添加一些错误处理并返回成功/失败消息,如下所示:
CREATE OR REPLACE PROCEDURE testproc()
RETURNS varchar
LANGUAGE JAVASCRIPT AS
'var sqlcommand =
`INSERT INTO foo (bar) VALUES (999);`
try {
snowflake.execute({sqlText: sqlcommand});
return "Success";
}
catch(err) {
return "Failed: "+ err;
}
';
创建过程GetLastUpdateDate()以$$的形式返回布尔语言javascript
我有一个返回布尔值javascript存储过程。我希望能够在事务内部调用这个存储过程,并在提交事务之前测试返回值。 如何回滚存储过程中执行的语句?
问题内容: 我正在使用Oracle 11GR2,并且当varchar2字段为空时,在空字段上执行a 将显示在我的Eclipse控制台上。如何让它显示空字符串呢? 问题答案: 你的getter方法:
问题内容: 我如何获得一个线程以将元组或我选择的任何值返回给Python中的父级? 问题答案: 我建议您在启动线程之前实例化Queue.Queue,并将其作为线程的args之一传递:在线程完成之前,它将结果作为参数接收到的队列中。父母可以或愿意。 队列通常是在Python中安排线程同步和通信的最佳方法:队列本质上是线程安全的消息传递工具,这是组织多任务的最佳方法!
代码如下:
null