adodataset2.CommandText:='select ''aa'' as hirename1,* from wanthireinfo';
adodataset2.OPEN;该SQL语句在ACCESS里的SQL查询中通过,可是DELPHI里死活都报 ‘未知错误’!!!
如果直接'select * from wanthireinfo则没问题,就这么简单!!气煞老夫了!
adodataset2.OPEN;该SQL语句在ACCESS里的SQL查询中通过,可是DELPHI里死活都报 ‘未知错误’!!!
如果直接'select * from wanthireinfo则没问题,就这么简单!!气煞老夫了!
反过来也是成立的。
如果是字段名本身
adodataset2.commandtext:='select aa as hirenamel,* from wanthireinfo where wanthireinof';
如果是字段变量则
adodataset2.commandtext:='select '+aa+' as hirenamel,* from wanthireinfo';
select iif(beginPrince=0,endPrince,BeginPrince) as Prince,iif(beginrows=0,endbeginrows,beginrows) as rows ,* from t1
adodataset2.CommandText:='select aa as hirename1,* from wanthireinfo';
aa加单引号变成了值,aa 本身应是字段变量
SELECT aa as hirename1,(SELECT * FROM wanthireinfo) FROM wanthireinfo
不过慢了点:)
上述语句可拆分成:
var a,b as string
begin
if beginprince=0 then
a :=endprince
else
a:=beginprince;
if beginrows=0 then
b:=endrows
else
b:=beginrows
select a as prince,b as rows,* from tl
end;
TO LORILI:IIF是数据库解释的SQL语句,在这里只是个字符,怎么不能用呢?所不同的是ACCESS用IIF,SQLSERVER用CASEselect iif(beginPrince=0,endPrince,beginPrince) as Prince,iif(beginrows=0,endrows,beginrows) as rows ,* from t1这个语句错误主要是不能as rows,应该as rows_1,不知道ROWS触犯到DELPHI的哪个神经,在解释的时候就报错了。谢谢大家讨论。