我使用Firebird 2.5 64bit版本。我有两张表Master(A)和Detail(B),我为B设置了级联更新和删除,因此如果我删除了Master中的一条记录,任何相关记录的详细信息也将被删除。Firebird存储过程中的“select..into”
我设置了一个删除触发器表B中执行,并传递参数给存储过程后
该存储过程具有以下SQL:
select STATUS from A
where A.PK_id = :PK_id
INTO :var_status;
的问题是,我总是得到NULL
为变量var_status
虽然我检查它在SQL编辑器中,我得到1
这是正确的值,我也检查(使用IBexpert调试器)传递的参数:PK_id
,它也是正确的!
为什么我得到存储在这个变量中的错误值。
你可以发布更多的代码,显示如何声明和使用var_status和PK_id? – Re0sless
在SP中声明的var_status id为smallint,PK_ID是表A的主键字段 – Welliam