procedure TfrmNewUser.Button1Click(Sender: TObject);
var
newuser,pass:string;
begin
if Edit1.Text=''then
begin
ShowMessage('用户名不能为空');
end
else
begin
newuser:='Edit1.Text';
pass:='Edit2.Text';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert 用户清单values('newuser','pass'));
ADOQuery1.Open;
endend;
我就想添加一个新用户到用户清单,谁知道能帮我改一下代码吗,我真的搞不明白了,谢谢啊!
那个Insert语句总有错误
var
newuser,pass:string;
begin
if Edit1.Text=''then
begin
ShowMessage('用户名不能为空');
end
else
begin
newuser:='Edit1.Text';
pass:='Edit2.Text';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert 用户清单values('newuser','pass'));
ADOQuery1.Open;
endend;
我就想添加一个新用户到用户清单,谁知道能帮我改一下代码吗,我真的搞不明白了,谢谢啊!
那个Insert语句总有错误
如果写连在一起,计算机就认为语法错误。
你可以showMessage看看你的sql 语句是什么
pass:='Edit2.Text';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert 用户清单values('newuser','pass'));
ADOQuery1.Open;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
newuser:=Edit1.Text;
pass:=Edit2.Text;//这里变量赋值不用加引号
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Insert into 表名 values('+newuser+' ,'+pass+' )';
ADOQuery1.ExecSql;//这里用ExecSql,不能用open//into into 表名 values(列1,列2)//语法
各位还得再帮帮我。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
建议这样写;
with adoquery1 do begin
Close;
SQL.Clear;
sql.Add('insert into 表名 (用户名字段,用户密码字段) values(:temp1,:temp2)');
Parameters.ParamByName('temp1').Value:=Trim(Edit1.Text);
Parameters.ParamByName('temp2').Value:=Trim(edit2.Text);
ExecSql;
Close;
end;//end with
搞定了增加用户,谢谢你们啊。
谢谢gxgyj(Jackson)