如题所述
1、使用adoquery2.IsEmpty判断是否为空
或者使用if adoquery2.RecordCount>0 then
if not(adoquery2.IsEmpty) then
begin
ShowMessage("此产品已存在");
exit;
end;
2、 SQL语句中引入参数之后,在执行SQL语句之前就必须给参数赋值。如何赋值呢?这就要用到ADOQuery组件的Parameters属性。该属性是一个下标从0开始的数组:
Parameters[0]、Parameters[1]、Parameters[2]、…、
其中的每个数组元素与ADOQuery组件的SQL语句中的参数相对应,例如要给SQL语句中的第一个参数赋值,可以执行如下语句:
ADOQuery1.Parameters[0].Value:=<参数值>
要给SQL语句中的第二个参数赋值,可以执行如下语句:
ADOQuery1.Parameters[1].Value:=<参数值>
以此类推 …
除了用Parameters[0].Value 、Parameters[1].Value 等来给SQL语句中的参数赋值外,还可以使用如下语句:
Parameters.ParamByName(<参数名>).Value:=<参数值>
来给参数赋值。例如,例Parameters[0].Value:=edit1.Text;可以改为:
Parameters.ParamByName(‘XianShi’).Value:=edit1.Text;
很明显,后一种方式比前一种更直观一些。
SQL命令中带有多个参数的情形
SQL命令中可以带有多个参数,例如:某个Query组件,为它编写如下的动态SQL语句:
Insert Into Customer(CustNo,Name,Country) Values(:CustNo ,:Name ,:Country)
对于上述这条动态SQL语句中的三个参数,可以利用Query的Params属性为参数赋值:
Query.Params[0].AsString:=”1998” ;
Query.Params[1].AsString:=”AAA” ;
Query.Params[2].AsString:=”China”;
上述语句将把“1998”赋给参数CustNo,“AAA”赋给参数Name,“China”赋给参数Country。
或者使用if adoquery2.RecordCount>0 then
if not(adoquery2.IsEmpty) then
begin
ShowMessage("此产品已存在");
exit;
end;
2、 SQL语句中引入参数之后,在执行SQL语句之前就必须给参数赋值。如何赋值呢?这就要用到ADOQuery组件的Parameters属性。该属性是一个下标从0开始的数组:
Parameters[0]、Parameters[1]、Parameters[2]、…、
其中的每个数组元素与ADOQuery组件的SQL语句中的参数相对应,例如要给SQL语句中的第一个参数赋值,可以执行如下语句:
ADOQuery1.Parameters[0].Value:=<参数值>
要给SQL语句中的第二个参数赋值,可以执行如下语句:
ADOQuery1.Parameters[1].Value:=<参数值>
以此类推 …
除了用Parameters[0].Value 、Parameters[1].Value 等来给SQL语句中的参数赋值外,还可以使用如下语句:
Parameters.ParamByName(<参数名>).Value:=<参数值>
来给参数赋值。例如,例Parameters[0].Value:=edit1.Text;可以改为:
Parameters.ParamByName(‘XianShi’).Value:=edit1.Text;
很明显,后一种方式比前一种更直观一些。
SQL命令中带有多个参数的情形
SQL命令中可以带有多个参数,例如:某个Query组件,为它编写如下的动态SQL语句:
Insert Into Customer(CustNo,Name,Country) Values(:CustNo ,:Name ,:Country)
对于上述这条动态SQL语句中的三个参数,可以利用Query的Params属性为参数赋值:
Query.Params[0].AsString:=”1998” ;
Query.Params[1].AsString:=”AAA” ;
Query.Params[2].AsString:=”China”;
上述语句将把“1998”赋给参数CustNo,“AAA”赋给参数Name,“China”赋给参数Country。
温馨提示:答案为网友推荐,仅供参考