天哪,我的sql怎么了(关于sql语句的问题)(100分)

  • 主题发起人 主题发起人 terry_lzs
  • 开始时间 开始时间
T

terry_lzs

Unregistered / Unconfirmed
GUEST, unregistred user!
我希望在一个表中通过user字段进行筛选
在adoquery的控件的sql中直接写
select * from yyy
where user='MICHAEL'
顺利通过
我希望在程序中改变选值
于是
adoquery1.active:=false;
adoquery1.sql.clear;
adoquery1.sql.add('select * from yyy');
adoquery1.sql.add('where user="MICHAEL"')
adoquery1.active:=true;
程序就出错了
提示:Project Project1.exe raise exception class
EOleEception with message'Invalid column name
'MICHAEL' .
只要把语句中的双引号改为单引号就可以通过了
可是这样的话我的程序要怎么写啊
大家快帮帮忙,我快不行了
user为char型,长度10
 
1:先申请一个AnsiString 变量 如:NA
2:将MICHAEL附给NA;
3:将adoquery1.sql.add('where user="MICHAEL"')改为:
adoquery1.sql.add("where user='"+NA+"'")


 
》可是这样的话我的程序要怎么写啊
不是已经能通过了么?
你要用sql server的话。。换个字段名把
 
to:3hsoft
方法不可行,一样出错
to:千中元
我是在程序中动态改变时出错的,好像是sql.add中用到双引号时出错
 
adoquery1.sql.add('select * from yyy');
adoquery1.sql.add('where user=''MICHAEL''')
 
michal加的不是双引号,是兩個單引號.
 
多人接受答案了。
 
后退
顶部