Delphi SQL

a_nobody___ 2017-10-14 10:43:28
一、 adoquery1.SQL.Add('select top 1 * from xnuserinfo where 1=1 ');
二、if bh <> '' then adoquery1.SQL.Add(' and bh=''' + bh + '''');
三、 if user_name<>'' then adoquery1.SQL.Add(' and user_name like ''' + '%' + user_name + '%' + '''');
四、 adoquery1.Open;

这里第二句中的SQL.Add('and bh ''' + bh + '''')是怎么解释的?
第三句也是一样的?

...全文
473 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiangqing 2017-10-16
  • 打赏
  • 举报
回复
动态拼接语句。
二月十六 版主 2017-10-15
  • 打赏
  • 举报
回复
应该是拼接SQL 语句,楼主最后可以把SQL add 完之后打印一下,看看最后是个什么样的字符串。
吉普赛的歌 版主 2017-10-14
  • 打赏
  • 举报
回复
引用 楼主 a_nobody___ 的回复:
一、 adoquery1.SQL.Add('select top 1 * from xnuserinfo where 1=1 '); 二、if bh <> '' then adoquery1.SQL.Add(' and bh=''' + bh + ''''); 三、 if user_name<>'' then adoquery1.SQL.Add(' and user_name like ''' + '%' + user_name + '%' + ''''); 四、 adoquery1.Open; 这里第二句中的SQL.Add('and bh ''' + bh + '''')是怎么解释的? 第三句也是一样的?
如果 bh 不为空串, 则将这 SQL 的条件加上 ' and bh=''' + bh + '''' 。 这个也很好理解。 比如, 用户在查询 编号的文本框中输入了, 则后台查询时加上这个条件 如果用户没输入则后台查询时就不需要这个条件了。
顺势而为1 2017-10-14
  • 打赏
  • 举报
回复
楼主还是到 DELPHI板块去问吧

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧