妈的!!!这commandtext为何这么难用????????????????????????????????????????? commandtext:='select * from DB where xx=''中学'' and by='+TF 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先by 是保留字,不能当字段名,其次, by=TF 是不能这么写的, 我不知道你的by是什么类型的字段,但是,无论如何,TF是局部变量,这么可能让数据库服务器认识呢?可是用参数和直接写值 将上面一句该为以下的看看:var TF:Boolean;commandtext := 'Select * from DB where xx=''中学'' and by=' + TF; yy为逻辑值,还是通不过:commandtext := 'Select * from DB where xx=''中学'' and yy=' + TF; (以上仅为举例,实际没用by保留字) 是不是因为TF为Boolean?你看能不能根据TF的值把yy=字符串true 或者False! 主要是这个表达式如何写?比如下面这个改为commandtext如何写?var xj0:boolean;SQL.CLEAR;SQL.ADD('SELECT * FROM YHZH');SQL.ADD('where (XJ=:P_XJ)');PARAMBYNAME('P_XJ').ASBOOLEAN:=XJ0;open; DELPHI TreeView排序的问题 如何实现复制\粘贴多个DBGrid网格的数据? 请问一个关于SpeedButton和ImageList的问题 请教用delphi如何检测当前系统是否支持OpenGL 简单问题,请帮手,在线等…… 紧急-----谁能告诉我fastreport的注册码?在线等待 控件消息 斑竹帮忙~~ Websnap 中删除记录前,怎么进行提示? 一个关于Delphi 的数据库问题 vc vs delphi 为什么我用ADOQUERY.DELETE命令删除结果集中仅有的一条记录时会报错? 关于dbgrid控件问题(菜鸟问题)!!求救
类型的字段,但是,无论如何,TF是局部变量,这么可能让数据库服务器认识呢?可是
用参数和直接写值
commandtext := 'Select * from DB where xx=''中学'' and by=' + TF;
commandtext := 'Select * from DB where xx=''中学'' and yy=' + TF;
(以上仅为举例,实际没用by保留字)
var xj0:boolean;
SQL.CLEAR;
SQL.ADD('SELECT * FROM YHZH');
SQL.ADD('where (XJ=:P_XJ)');
PARAMBYNAME('P_XJ').ASBOOLEAN:=XJ0;
open;