我使用SQL server数据库,用ADOquery控件进行操作,现在要向数据库中插入记录时程序报错“ODBC sqlserver 没有执行可选择特性”,请问是什么原因产生的错误?程序对应部分的代码如下,单步到adoquery1.ExecSQL ;时报错:adoquery1.Close;
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('insert into main(customname,sex,age,address,phone,mail,orders,orderdate) values(:customname,:sex,:age,:address,:phone,:mail,:orders,:orderdate)');
adoquery1.Parameters[0].Value:=edit1.Text ;
adoquery1.Parameters[1].Value:=edit2.Text ;
adoquery1.Parameters[2].Value:=edit3.Text ;
adoquery1.Parameters[3].Value:=edit4.Text ;
adoquery1.Parameters[4].Value:=edit5.Text ;
adoquery1.Parameters[5].Value:=edit6.Text ;
adoquery1.Parameters[6].Value:=combobox1.Text;
adoquery1.Parameters[7].Value:=datetimepicker1.Date ;
adoquery1.Prepared;
adoquery1.ExecSQL ;
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('insert into main(customname,sex,age,address,phone,mail,orders,orderdate) values(:customname,:sex,:age,:address,:phone,:mail,:orders,:orderdate)');
adoquery1.Parameters[0].Value:=edit1.Text ;
adoquery1.Parameters[1].Value:=edit2.Text ;
adoquery1.Parameters[2].Value:=edit3.Text ;
adoquery1.Parameters[3].Value:=edit4.Text ;
adoquery1.Parameters[4].Value:=edit5.Text ;
adoquery1.Parameters[5].Value:=edit6.Text ;
adoquery1.Parameters[6].Value:=combobox1.Text;
adoquery1.Parameters[7].Value:=datetimepicker1.Date ;
adoquery1.Prepared;
adoquery1.ExecSQL ;
adoquery1.SQL.Clear ;
adoquery1.Parameters[0].Value:=edit1.Text ;
adoquery1.Parameters[1].Value:=edit2.Text ;
adoquery1.Parameters[2].Value:=edit3.Text ;
adoquery1.Parameters[3].Value:=edit4.Text ;
adoquery1.Parameters[4].Value:=edit5.Text ;
adoquery1.Parameters[5].Value:=edit6.Text ;
adoquery1.Parameters[6].Value:=combobox1.Text;
adoquery1.Parameters[7].Value:=datetimepicker1.Date ;
adoquery1.SQL.Add('insert into main(customname,sex,age,address,phone,mail,orders,orderdate) values(:customname,:sex,:age,:address,:phone,:mail,:orders,:orderdate)');
adoquery1.Prepared;
adoquery1.ExecSQL ;
还有,“ODBC sqlserver 没有执行可选择特性”是什么原因产生的呢?
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('insert into main(customname,sex,age,address,phone,mail,orders,orderdate) values('''+ edit1.Text ''',' + edit2.Text +
''',' + edit3.Text +
''',' + edit4.Text +
''',' + edit5.Text +
''',' + edit6.Text +
''',' + combobox1.Text +
''',' + DateToStr(datetimepicker1.Date +
''')'
adoquery1.Prepared;
adoquery1.ExecSQL ;可能是sql不能得到正确的字段属性信息而进行相应的转换吧。
adoquery1.Close;
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('insert into main(customname,sex,age,address,phone,mail,orders,orderdate) values('''+ edit1.Text ''',' + edit2.Text +
''',' + edit3.Text +
''',' + edit4.Text +
''',' + edit5.Text +
''',' + edit6.Text +
''',' + combobox1.Text +
''',' + DateToStr(datetimepicker1.Date )+
''')'
adoquery1.Prepared;
adoquery1.ExecSQL ;
adoquery1.Parameters[7].Value:=datetimepicker1.Date ;