gpt4 book ai didi

sql - 如何在Delphi中创建类似item1、item2、item3格式的SQL查询?

转载 作者:行者123 更新时间:2023-12-03 05:32:51 26 4
gpt4 key购买 nike

我在 Delphi 中使用 CheckListEdit 组件,它可以一次选择多个项目。当使用 CheckListEdit1.Text 提取时,我得到字符串格式的选定项目,如 [item1, item2, item3] ,我进一步修剪以丢弃第一个和最后一个字符,以获得最终字符串“item1, item2,项目3'。

我的代码如下

glist := CheckListEdit1.Text;
glistindex := Length(glist);
Delete(glist,glistindex,1);
Delete(glist,1,1);

//这里我得到 glist = 'item1, item2, item3..' 等等..

现在我想从表中的数据中进行选择,其中组如 item1、item2、item3 等。

我的SQL查询如下

UniTable1.SQL.Text := Select * from emp where group like (:grp);
UniTable1.Params.ParamByName('grp').Value := glist;

但是上面的 SQL 返回错误,因为“像 item1、item2、item3”不是正确的格式,是否有任何替代方法可以创建 SQL 查询,以便它从 CheckListEdit 中的选定组返回数据?

最佳答案

您需要将字符串构建为“(item1, item2, item3)”,而不是构建为“item1, item2, item3”。那么你的查询将变成

Select * from emp where group in (item1, item2, item3)

正如 whosrdaddy 所指出的,您必须将查询构建为连接字符串;无法将值列表作为参数传递。

关于sql - 如何在Delphi中创建类似item1、item2、item3格式的SQL查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20514539/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com