回 帖 发 新 帖 刷新版面

主题:自学的,帮帮忙啊,到底哪错了

做了一个例题,是一个简单的课程表,用SQL Server 数据库,在Delphi中要完成增lk \修改\删除功能,但是在
procedure TForm1.Button2Click(Sender: TObject);
begin
ado_exec.SQL.clear;
ado_exec.SQL.Add('Update kecheng set id='+''''+'edit1.text+''''+','+xqy='+''''+edit2.text+''''+',where xqe='+''''+edit3.text);编译时这句会出too many actual parameters的错误
ado_exec.ExecSQL;

而且致命错误是project1.dpr(5):could not compile used unit'unit1.pas'
 
是怎么回事,还望各位仁兄指教.

回复列表 (共4个回复)

沙发

setid还是set id

板凳

将下句:
ado_exec.SQL.Add('Update kecheng set id='+''''+'edit1.text+''''+','+xqy='+''''+edit2.text+''''+',where xqe='+''''+edit3.text);
改为:
ado_exec.SQL.Add('Update kecheng set id='''+edit1.text+''',xqy='''+edit2.text+''' where xqe='''+edit3.text+'''');
即可。

3 楼

编译后出现对话框
"工程project1.exe 检测到错误类 EO1eException,错误信息:将varchar值'化学'转换为数据类型为int的列时发生语法错误,"
怎么回事啊

4 楼

你的表中字段属性错了,字段属性为INT,但是delphi文本框中传入的数据类型为string型的。
从你说的情况来看,你应该将表中要赋与“化学”这个值的字段的属性改为字符型数据类型。

我来回复

您尚未登录,请登录后再回复。点此登录或注册