读书人

动态语句有关问题

发布时间: 2012-03-16 16:34:56 作者: rapoo

动态语句问题
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有问题

读书人网 >PB

热点推荐