sql 语句中可以有变量吗???

m54772091 2005-12-21 02:36:56
query.sql.text:='select name,money*aa from record'
因为我想根据客户输入aa的值,来提出money*aa 后的数据,但是变量不可以出现在语句select后面,
如何处理
...全文
352 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnnbwhq 2005-12-22
  • 打赏
  • 举报
回复
当然可以,并且必要。使用变量更能够发挥数据库的强大威力。呵呵
小呆之家 2005-12-22
  • 打赏
  • 举报
回复
sql server 中SQL指令中包括动态参数,在D环境下是这样处理的:在SQL中使用“:”号来表示一个动态参数;如下例:
with adoquery do
begin
close;
sql.clear;
sql.add('select count(*) from tbl_person where person_age>=:param_age');
parameters.parambyname('param_age').value:=25;//---这句是为动态参数指定参数值;
prepared;
open;
end;
deansroom 2005-12-22
  • 打赏
  • 举报
回复
总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法以
及SQL语句中日期格式的表示(#)、('')
在Delphi中进行字符变量连接相加时单引号用('''),又引号用('''')表示
首先定义变量
var
AnInt:integer=123;//为了方便在此都给它们赋初值。虽然可能在引赋初值在某些情况下不对
AnIntStr:string='456';
AStr:string='abc';
AFieldName: string='字符型编号';
ATableName: string='YourTable';
ADate:Tdatetime=now;
Adoquery1:tadoquery;
1,Delphi语句
adoquery1.sql.text:=
'select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123';
等价于
adoquery1.sql.text:=
'select '+AFieldName+' from '+ATableName+' where '+AFieldName
+'='''+AStr+''' and 整型编号='+AnIntStr;
也等价于
adoquery1.sql.text:=
'select '+AFieldName+' from '+ATableName+' where '+AFieldName
+'='+QuotedStr(AStr)+' and 整型编号='+Inttostr(AnInt);
传到数据库服务器为:
select 字符型编号 from YourTable where 字符型编号='abc' and 整型编号=123
xthmpro_cn 2005-12-22
  • 打赏
  • 举报
回复
可以使用 Select * From Atable where AField = :aa 作为参数,至于加法是用''''括起来是最基本的。
m54772091 2005-12-21
  • 打赏
  • 举报
回复
哦,问题解决了,你们太棒了,总结一下,就是,变量 在显示列的部分可以用 '+aa+'
在子句中 用 '''+aa+''' 当然 aa 是字符变量 ,对吗
slipsun 2005-12-21
  • 打赏
  • 举报
回复
个人感觉还是用参数好。
weiqinliang 2005-12-21
  • 打赏
  • 举报
回复
aa:=trim(edit1.text);
query.sql.text:='select name,money * ' + aa + ' from record';
jinjintalk 2005-12-21
  • 打赏
  • 举报
回复
如果aa是数值,则
query.sql.text := 'select name , money * ' + floattostr(aa) + ' from record'
last1990 2005-12-21
  • 打赏
  • 举报
回复
query.sql.text := 'select name , money * ' + inttostr(aa) + ' from record';

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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