读书人

数据窗口列名无效怎么继续检索出其他

发布时间: 2012-04-07 17:31:51 作者: rapoo

数据窗口列名无效,如何继续检索出其他列的数据以显示在数据窗口中
现有一数据窗口,其有一列名在数据库中不存在,但仍想检出其他列的数据,其不存在的列以缺省值显示,已在error事件中设置了返回值,但无效

[解决办法]
在dberror事件中,这么写试试,当然你可以按照这种思路自己进行改进

C/C++ code
if pos(sqlerrtext, 'Select error: 列名') > 0 then    string ls    ls = mid(sqlerrtext, pos(sqlerrtext, "'") + 1, pos(sqlerrtext, "'", pos(sqlerrtext, "'") + 1) - pos(sqlerrtext, "'") - 1)    ls = left(sqlsyntax, pos(sqlsyntax, ls) - 1) + "'默认值' as " + ls + mid(sqlsyntax, pos(sqlsyntax, ls) + len(ls))    setsqlselect( ls)    post retrieve()end ifreturn 1
[解决办法]
改一下SQL 语法,把不显示的那一列 设为虚拟列 '' as column_name即可
[解决办法]
SQL code
select xmbh, case when col_length('tb', 'zcbb') is null then ''   else zcbh end as zcbh,kmbh  from tb
[解决办法]
设为虚列同时不能在sql中引用不存在的列,否则执行时还是会报错的。

读书人网 >PB

热点推荐