如,SQL语句为:select * from sale where name=:name 此处 :NAME为一个参数,如何/在哪里定义它的类型,如何引用
有一方法为在运行SQL前(组件是QUERY)用QUERY1。PARAMS预设参数(如上句SQL语句),可是这样不方便啊。我想在运行时再用用参数,如要查询某姓名时;另一法,运行时赋值给参数,会提示我索引越界,怎么解决这个问题
有一方法为在运行SQL前(组件是QUERY)用QUERY1。PARAMS预设参数(如上句SQL语句),可是这样不方便啊。我想在运行时再用用参数,如要查询某姓名时;另一法,运行时赋值给参数,会提示我索引越界,怎么解决这个问题
解决方案 »
- count use the same dataset for report.dataset and band.dateset
- 撒分了,ICS组件中的Httpcli如何设置AcceptEncoding
- 在Delphi里如何动态创建Access视图
- delphi中怎么自动注册ODBC
- 跑跑卡丁车的声音资源怎么提取啊
- 帮我解决一下问题吧?
- 比较两个目录是否完全相同(文件数目,以及各个文件本身)怎么实现比较简单?
- 请问:怎么定义一个数组???
- 一个真正的高难度问题,不是专家级的请不要进
- 多个edit赋值问题
- 在线等待:delphi中如何判断一个类变量是否已经create?
- 谁可以给我一个最简单的Delphi下的DirectX程序~~~~(万分感谢!~~~)
const
csqlselect = 'select * from sale where name = %s'query1.sql := format(csqlselect, [quotedstr(name)]) ;
query1.clear;
query1.sql.add('select * from sale where name=:name');
query1.parameters.ParamByName('name').value := ???;
query1.parameters.ParamByName('other').value := ???;//if exists other parameter
....
query1.execsql;
query1.close;
sql.text:='select * from sale where name='+#39+'张三'+#39 就OK了.
至于数据类型,delphi会自动转换的.一般为两种,数值和字符,字符要加引号:
sql.text:='select * from sale where name='+#39+'张三'+#39
数值不用加:
sql.text:='select * from sale where number='+'32'
2.引用query1.parameters.ParamByName('name').
3.
query1.sql.add('select * from sale where name=''' + name + '''');