insert into语句的语法错误(50分)

  • 主题发起人 主题发起人 lovenuo
  • 开始时间 开始时间
L

lovenuo

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm2.Button1Click(Sender: TObject);
begin
form1.ADOQuery1.Close;
form1.ADOQuery1.SQL.Clear;
form1.ADOQuery1.SQL.Add('insert ProxyVip(IP,User,Password,Relate,QQ,Data,BZ)');
form1.ADOQuery1.SQL.Add('values (:IP,:User,:Password,:Relate,:QQ,:Data,:BZ');
form1.ADOQuery1.Parameters.ParamByName('IP').Value:=Trim(Edit1.Text);
form1.ADOQuery1.Parameters.ParamByName('User').Value:=Trim(Edit3.Text);
form1.ADOQuery1.Parameters.ParamByName('Password').Value:=Trim(Edit4.Text);
form1.ADOQuery1.Parameters.ParamByName('Relate').Value:=Trim(Edit2.Text);
form1.ADOQuery1.Parameters.ParamByName('QQ').Value:=Trim(Edit5.Text);
form1.ADOQuery1.Parameters.ParamByName('Data').Value:=Trim(Edit5.Text);
form1.ADOQuery1.Parameters.ParamByName('BZ').Value:=Trim(Memo1.lines.text);
form1.ADOQuery1.ExecSQL;
end;


运行后点击Button1,出现"insert into语句的语法错误",我那里出错了,请朋友给出代码!
 
form1.ADOQuery1.SQL.Add('values (:IP,:User,:Password,:Relate,:QQ,:Data,:BZ');
少了个括号:
form1.ADOQuery1.SQL.Add('values (:IP,:User,:Password,:Relate,:QQ,:Data,:BZ)');
 
form1.ADOQuery1.SQL.Add('insert[red] into[/red] ProxyVip(IP,User,Password,Relate,QQ,Data,BZ)');
form1.ADOQuery1.SQL.Add('values (:IP,:User,:Password,:Relate,:QQ,:Data,:BZ');
 
加上括号,问题依然存在!
 
procedure TForm2.Button1Click(Sender: TObject);
begin
form1.ADOQuery1.Close;
form1.ADOQuery1.SQL.Clear;
form1.ADOQuery1.SQL.Add('insert ProxyVip(IP,User,Password,Relate,QQ,Data,BZ)');
form1.ADOQuery1.SQL.Add('values (:IP,:User,:Password,:Relate,:QQ,:Data,:BZ');
form1.ADOQuery1.Parameters.ParamByName('IP').Value:=Trim(Edit1.Text);
form1.ADOQuery1.Parameters.ParamByName('User').Value:=Trim(Edit3.Text);
form1.ADOQuery1.Parameters.ParamByName('Password').Value:=Trim(Edit4.Text);
form1.ADOQuery1.Parameters.ParamByName('Relate').Value:=Trim(Edit2.Text);
form1.ADOQuery1.Parameters.ParamByName('QQ').Value:=Trim(Edit5.Text);
form1.ADOQuery1.Parameters.ParamByName('Data').Value:=Trim(Edit5.Text);
form1.ADOQuery1.Parameters.ParamByName('BZ').Value:=Trim(Memo1.text);
form1.ADOQuery1.ExecSQL;
end;

Memo1.lines.text没有这样的引用方法,改为Memo1.text
 
Memo1.lines.TEXT=MEMO1.TEXT
估计是类型不匹配。
另外最还使用标准insert into 代替Insert,其实差不多。也许好写。
password估计是不是冲突了。
 
晕,我测试了一个用
form1.ADOQuery1.Close;
form1.ADOQuery1.SQL.Clear;
form1.ADOQuery1.SQL.Add('insert to ProxyVip(IP)');
form1.ADOQuery1.SQL.Add('values (:IP');
form1.ADOQuery1.Parameters.ParamByName('IP').Value:=Trim(Edit1.Text);
form1.ADOQuery1.ExecSQL;
一样,出错!
 
你又少了一个括号 在form1.ADOQuery1.SQL.Add('values (:IP');的地方
 
在往SQL语句中增加SQL语句的时候注意在每个语句后多加一个空格。

切记!!!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
974
import
I
I
回复
0
查看
711
import
I
I
回复
0
查看
948
import
I
后退
顶部