【发布时间】:2016-06-30 19:15:57
【问题描述】:
大家好,我在 Aginity(Netezza) 中写了一个简单的程序。存储过程基本上必须将数据从一个 db.table1 加载到 db2.table2。简单吧?然后过程 - 过程 1 接受一个参数,即数据库 (db) 的名称。
这是我尝试运行程序时收到的错误消息: /* 错误 [HY000] 错误:语法错误,意外变量,期望在“db_arg”或附近开始 */
过程如下所示:
CREATE OR REPLACE PROCEDURE LOAD_data_proc(CHARACTER VARYING(15))
RETURNS INTEGER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE
db_arg CHARACTER VARYING(15);
/* 如果我删除上述声明,我会收到以下错误消息: ERROR [HY000] ERROR: ResolveCatalog: error retrieving database 'STG_DB_NAME' */
db_arg ALIAS FOR $1;
/* 和一堆其他参数和声明 */
BEGIN
/* 这里的逻辑 if then else 语句 */
END;
END_PROC;
以前有人遇到过这个问题吗?
【问题讨论】:
标签: sql stored-procedures netezza