这样:
……
var m1,m2:currency;
……
m1:=strtocurr(edit1.Text);
m2:=strtocurr(edit2.Text);
with query1 do
begin
.....
sqlstr:=sqlstr+' and 上市价格 between :m1 and :m2';
.....
parambyname('m1').asstring:=m1;
parambyname('m2').asstring:=m2;
.........
open;
end;
……
var m1,m2:currency;
……
m1:=strtocurr(edit1.Text);
m2:=strtocurr(edit2.Text);
with query1 do
begin
.....
sqlstr:=sqlstr+' and 上市价格 between :m1 and :m2';
.....
parambyname('m1').asstring:=m1;
parambyname('m2').asstring:=m2;
.........
open;
end;
解决方案 »
- ActiveXForm如何创建事件?
- 100 分问一个坐标问题,人在线,解决了就结帐
- 求助!!Delphi调用VB写的COM的问题~~~在线等待~~
- COPYFILE报的一个错误
- 请问:MessageDlg()按扭能用中文显示吗?
- 做了一个控件,现在想发布,我见过可以做成EXE注册的,那是怎么做的呢??
- 送分100分:关于string变量的使用问题。
- 往数数据表时添加记录时出错,
- 如何把edit中的数字在用户输入完后自动加上小数位 如输入10 输入完后自动变成¥10.00
- 一个高分、高水准的问题,希望大家积极提前、共同探讨。
- ss3[0]=^
- type里面的 Button1: TButton;代表什么意思?他和TForm4 = class(TForm)是一个意思吗?
procedure TForm7.SpeedButton1Click(Sender: TObject);
var sqlstr:string;
var m1,m2:currency;
begin
datamodule3.PDAtomarQuery1.Close;
sqlstr:='select * from PDA上市视图';
if (combobox1.Text<>'所有')and(combobox1.Text<>'') then
sqlstr:=sqlstr+' where 产品名称 ='''+combobox1.Text+''''
else
sqlstr:=sqlstr+' where 产品名称 like ''%''';
if(combobox2.Text<>'所有')and(combobox2.Text<>'') then
sqlstr:=sqlstr+' and 生产公司='''+combobox2.Text+'''';
if(combobox3.Text<>'所有')and(combobox3.Text<>'') then
sqlstr:=sqlstr+' and 地点名称='''+combobox3.Text+'''';
if(edit1.Text<>'')and(edit2.Text<>'') then
begin
m1:=strtocurr(edit1.Text);
m2:=strtocurr(edit2.Text);
sqlstr:=sqlstr+' and 上市价格 between :m1 and :m2';
end;
datamodule3.PDAtomarQuery1.SQL.Clear;
datamodule3.PDAtomarQuery1.SQL.Add(sqlstr);
datamodule3.PDAtomarQuery1.ExecSQL;
datamodule3.PDAtomarQuery1.Open;
end;
到底哪出了问题??
是不是STRTOCURR用的不对?
我用的是ADOQUERY
datamodule3.PDAtomarQuery1.SQL.Add(sqlstr);datamodule3.PDAtomarQuery1.parambyname('m1').value:=m1;
datamodule3.PDAtomarQuery1.parambyname('m2').value:=m2;datamodule3.PDAtomarQuery1.ExecSQL;
datamodule3.PDAtomarQuery1.Open;
parambyname('m2').asstring:=m2;两句咯。