/***Manager***/CREATE OR REPLACE PROCEDURE "DMHR"."test"("cityid" IN VARCHAR(50))
AUTHID DEFINER
AS
city_name varchar(40);
tmp varchar(40):='BJ';
BEGIN
/* 注释掉下面可以正常编译和调试*/
print '-----'||cityid||'------';
/*执行体*/
select top 1 CITY_NAME into city_name from CITY where CITY_ID=tmp;
print city_name;
END;
我怀疑这个问题和它使用了存储过程的入参有关系,因此我在它创建的默认测试库创建了个存储过程,打印它的入参,会导致编译失败,如下图

在dmhr 的这个模式创建的一个测试存储过程