各位好:
请问在程序运行的时候,要动态的输入数据库的查询条件,(也就是说数据库查询条件是由用户自己按需要输入进去的。)怎么用话句来实现它,用到那此组件。请大家帮我写写好吗?谢谢了!
请问在程序运行的时候,要动态的输入数据库的查询条件,(也就是说数据库查询条件是由用户自己按需要输入进去的。)怎么用话句来实现它,用到那此组件。请大家帮我写写好吗?谢谢了!
解决方案 »
- FormCreate 如何显示图片
- dll封装窗体停靠在Panel上不是显示按钮的Hint信息。
- 关于FastReport用户自定义排序问题(急)!
- TWebbrowser/IWebbrowser2 打开新ie窗口
- 急招系统分析员、delphi程序员
- DBgrid 的格式问题
- 为什么BDE 的路径不能更改? 十万火急呀...多多分都送.
- 如何实现在Form/Image等控件上拖动时候会出现一个虚框?然后出现一个控件???
- 用JetEngine压缩Access数据库的问题
- 请问如何捕获特定异常信息(例如:query.execsql是否执行成功!)?
- 高难度!高分
- delphi 报表怎样设计成横向打印?
query1.sql.clear;
query1.sql.add(你接收的字符串);
query1.open;
adoquery1.close;
adoquery1.sql.clear
if combobox1.text='小于'
then
adoquery1.sql.add('select * from biao1 where xh<'+''+edit1.text+'');
....
adoquery1.open;
但要是多个条件,而且关系不一样,数据类型也不一样,如数据有int型 char型 data型怎么办呢。
s,sqlstr:string;
begin
s:=format('and 字段名 like %d',[你的查询的整形值]);
s:=s+format('and 字段名 like ''%s%%'',[你的查询的字符值]) ;
s:=s+format('and 字段名 like ''%s%%'',[formatdatetime('yyyy-mm-dd',你的查询的datetime值)]);
sqlstr:= 'select * from tablename where 1=1';
sqlstr:= sqlstr+s;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.text:=sqlstr;
adoquery1.open;
end;
jf~~~~
up~~是什么意思
简单举例如下
var
sql:string;
begin
sql:='select * from tabel';
if trim(edit1.text)<>'' then
sql:=sql+'字段A like'+#39+'%'+trim(edit1.text)+'%'+#39;
if ----- then
sql:=sql+ ----------;
if ----- then
sql:=sql+ ----------;
---------------
-------
end;
query1.sql.clear;
query1.sql.loadfromfile('.........');
query1.open
或者楼上的 也可以