动态语句问题
ls_sql = "select itemno from itemdata where "+ls_where
PREPARE SQLSA FROM :ls_sql;
OPEN DYNAMIC cursor_base;
FETCH cursor_base INTO :ls_itemno;
close cursor_base ;
如上的语句,执行的事实 ,sqlca.sqlcode = 100 ,单独在数据库里执行发现是对的,可以查询
为什么动态语句就为 100 ,望解,谢谢
[解决办法]
ValueMeaning
0Success.
100Fetched row not found.
-1Error; the statement failed. Use SQLErrText or SQLDBCode to obtain the detail.
[解决办法]
取不到数,说明 条件不对!建议用messagebox('',ls_sql) 看一下具体语法
[解决办法]
应该是 ls_where条件的问题!
[解决办法]
=100表示取不到,很可能是SQL的件有
[解决办法]
猜猜看
DECLARE cursor_base DYNAMIC CURSOR FOR SQLSA ;
ls_sql = "select itemno from itemdata where "+ls_where
PREPARE SQLSA FROM :ls_sql;
OPEN DYNAMIC cursor_base;
FETCH cursor_base INTO :ls_itemno;
close cursor_base ;
[解决办法]
你在哪个位置判断sqlca.sqlcode ?
ls_sql的值是什么? ls_where的值是多少?
[解决办法]
估计是ls_where有问题