如何在DELPHI中动态生成SQL查询语句?(本人分数有限!)

smile_wu 2001-07-19 01:13:11
Select * From Tablename Where Name Like :user;
中Name也是变量。
1,如何将Name用变量实现。
2,模糊查询中有几个查询条件(不定),之间有可能是‘与’,也有可能是‘或’;
如:根据实际生成这样的查询语句:
Select * From TableName
Where Name='李立'
And Sex='男'
有四个Edit,里面输入分别为‘Name’,‘李立’‘Age’‘男’。根据输入的信息动态生成以上查询语句,请问如何实现?

...全文
128 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dana 2001-07-19
  • 打赏
  • 举报
回复
I am late too
jearry_zhou 2001-07-19
  • 打赏
  • 举报
回复
I am late
飞天凤凰601 2001-07-19
  • 打赏
  • 举报
回复
gz
yhaochuan 2001-07-19
  • 打赏
  • 举报
回复
简单,
对于这种WHERE条件不多(只有四个)的情况你可以把所有的条件都写上,按以下格式
SELECT * FROM TableName
WHERE Name LIKE :Name AND Sex LIKE :Name AND Age LIKE :Age AND Other LIKE :Other
然后在赋这些参数值的时候如果Name没有提供则用"%",以此类推,
不知你是否明白这个原理?
yhaochuan@sina.com
powerlee 2001-07-19
  • 打赏
  • 举报
回复
procedure ButtonOnClick(Sender:Tobject);
VAR
S:string;
begin

with query do begin
sql.clear;
s:='SELECT * FROM TABLENAME WHERE '+edFieldName1.text+'='''+edFieldValue1.Text+''' and '+edFieldName2.txt+'='''+edFieldValue2.Text+'''';
sql.add(s);
open;
end;
end;
Icebird 2001-07-19
  • 打赏
  • 举报
回复
Format('Select * From TableName Where %s=''%s'' And %s=''%s''', [Edit1.Text,Edit2.Text,Edit3.Text,Edit4.Text]);
Icebird 2001-07-19
  • 打赏
  • 举报
回复
Format('Select * From TableName Where %s=''%s'' And %s=''%s''', Edit1.Text,Edit2.Text,Edit3.Text,Edit4.Text);

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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