谁帮我看下这段代码该怎么改?(10分)

  • 主题发起人 主题发起人 tanbo23456
  • 开始时间 开始时间
T

tanbo23456

Unregistered / Unconfirmed
GUEST, unregistred user!
我的要求很简单,就是在表里插入一个用户名和密码,我学了SQL,但是对SQL在DELPHI中的有些用法不是很清楚
query1.SQL.Add('insert into 用户表(用户名,密码);
query1.SQL.Add('and value('''+edit1.Text+''','''+edit2.Text+''')');
 
query1.SQL.Add('insert into 用户表(用户名,密码) values (' + quotedStr(edit1.Text) + ',' + QuotedStr(edit2.Text+) + ')');
 
还是不行啊
 
query1.SQL.Add('insert into 用户表(用户名,密码);<--這裡沒有 ')
query1.SQL.Add('and value('''+edit1.Text+''','''+edit2.Text+''')');

我想那麼短..一句打完就算了~
('insert into 用户表(用户名,密码) value ('+edit1.Text+','+edit2.Text+')');
:)
 
//楼上说的也都没有错,但有没有错误,没去试。
//自己随便写一下,参考一下。有没有语法错误,也没试。
Const
cStr = 'Insert Into 用户表(用户名,密码) values (%s, %s)'
begin
wtih Query1 do
begin
SQL.Clear;
SQl.Add(Format(cStr, [QuotedStr(edit1.Text), QuotedStr(edit2.Text)]));
end;
end;
 
value 错了,是 Values有个S的。
 
with query1 do
begin
Close;
Sql.Clear;
SQl.Add('insert into 用户表(用户名,密码') values (:username,:password);
parameters.parambyName('username').values := edit1.Text;
parameters.parambyName('password').values := edit2.Text;
OPen;
end;
 
楼上很对
楼主:values不是value
 
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('INSERT INTO 用户表(用户名,密码) VALUES(' + #39 + trim(Edit1.Text) + #39 + ', ' + #39 + trim(Edit2.Text) + #39 + ')');
Query1.ExecSQL;
 
赞成 ribuluo, 的
并且写有参数的SQL语句时最好使用此种风格,清楚而且便于修改
 
学习学习
 
這個問題很簡單啊,只是在插入時注意數據類型很重要
樓上幾種方式都可以實現
 

Similar threads

D
回复
0
查看
890
DelphiTeacher的专栏
D
D
回复
0
查看
858
DelphiTeacher的专栏
D
D
回复
0
查看
808
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部