string SQL="select * from where "+searchtype+" like '%"+searchkey+"%
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了string SQL="select * from where "+searchtype+" like '%"+searchkey+"%相关的知识,希望对你有一定的参考价值。
if(booktype.equals("所有书籍")) if(!searchtype.equals("") && !searchkey.equals("")) sql1 += " where "+searchtype+" like '%"+searchkey+"%'"; sql2 += " where "+searchtype+" like '%"+searchkey+"%'"; else sql1 += " where type='"+booktype+"'"; sql2 += " where type='"+booktype+"'"; if(!searchtype.equals("") && !searchkey.equals("")) sql1 += " and "+searchtype+" like '%"+searchkey+"%'"; sql2 += " and "+searchtype+" like '%"+searchkey+"%'"; 这段代码是什么意思,希望可以说得详细点,谢谢!!
string SQL="select * from where "+searchtype+" like '%"+searchkey+"%' ";你写的sql有问题,from后没有表名,
searchtype是你的表中的字段名, searchkey是你的查询条件,写完整了就像我下边写的sql一样:select * from Student where name like '%张%';(意思就是查询Student表中的name字段,只要name中的字段包含'张'字的都给查询出来)
if(booktype.equals("所有书籍")) :判断你的booktype是否为"所有书籍"
然后判断if(!searchtype.equals("") && !searchkey.equals("")) 是否为空,条件满足的情况下,就追加sql1,和sql2的条件
大概就是这个意思 参考技术A 拼接SQL语句。返回的string类型的SQL语句为
SELECT * FROM table WHERE (变量‘searchtype’对应的列名)LIKE (变量‘searchkey’对应的值) 参考技术B from后没有表名,这是个模糊查询,查找“searchtype”里包含“searchkey”的语句
出现错误 在执行 DB2 EXPORT IXF 时处理 Action String 参数中的 SELECT 字符串时发生 SQL 错误“-204”?
【中文标题】出现错误 在执行 DB2 EXPORT IXF 时处理 Action String 参数中的 SELECT 字符串时发生 SQL 错误“-204”?【英文标题】:Getting error An SQL error "-204" occurred while processing the SELECT string in the Action String parameter when executing DB2 EXPORT IXF? 【发布时间】:2019-08-28 14:13:10 【问题描述】:连接到数据库后,我在 Shell bash 上执行以下命令 下面的文本文件在 DB2 数据库中具有表名,例如
TABLE1
TABLE2
..
TABLEN
for tablenam in $(cat textfile)
do
db2 'EXPORT TO $PPL_IXFDRV/PREBKP/tablenam.IXF OF~
IXF MESSAGES /dev/null~
SELECT * FROM $SCHEMA.tablenam'
done
当我运行它时,我得到以下错误
SQL3022N 处理 中的 SELECT 字符串时发生 SQL 错误“-204” 操作字符串参数。
我已经用单引号尝试了上面的命令,如下所示
for tablenam in $(cat textfile)
do
db2 EXPORT TO $PPL_IXFDRV/PREBKP/tablenam.IXF OF~
IXF MESSAGES /dev/null~
SELECT \* FROM $SCHEMA.tablenam
done
这也给了我同样的结果
我在这里要做的是以 IXF 格式卸载数据库中“文本文件”列表中存在的 DB2 表,用重复命令中的 tablenam 替换 db2 EXPORT
【问题讨论】:
显然 Db2 找不到您要导出的表。使用-v
开关和db2
来回显正在执行的实际命令;您可能会发现问题出在哪里。
【参考方案1】:
试试这个:
for tablenam in $(cat textfile)
do
db2 "EXPORT TO $PPL_IXFDRV/PREBKP/$tablenam.IXF OF
IXF
SELECT * FROM $SCHEMA.$tablenam"
done
【讨论】:
我刚才试过了,结果是一样的可能没有被文本文件中的表名取代,我不确定需要一些帮助 循环内必须是$tablenam
而不是 tablenam
。检查更新的答案。以上是关于string SQL="select * from where "+searchtype+" like '%"+searchkey+"%的主要内容,如果未能解决你的问题,请参考以下文章
出现错误 在执行 DB2 EXPORT IXF 时处理 Action String 参数中的 SELECT 字符串时发生 SQL 错误“-204”?