首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

动态语句有关问题

2012-03-16 
动态语句问题ls_sql select itemno from itemdata where +ls_wherePREPARE SQLSA FROM :ls_sqlOPEN D

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

热点排行