我想做个管理班级同学的程序IP:192.168.1.2
SQL名:XueSheng
密码:123456
表:GL我的表是这样的
姓名 学号
text1.text:='小王' //名字
text2.text:='42' //学号
当我按BUTTON1后--1:首先连接到我的表--2:在表内'姓名'列中检验下text1.text内容是否已登记过
--3:如没注册过将text1和text2内容保存在'姓名'和'学号'列中
--4:如已经注册过showmessage'该同学已登记过'
SQL名:XueSheng
密码:123456
表:GL我的表是这样的
姓名 学号
text1.text:='小王' //名字
text2.text:='42' //学号
当我按BUTTON1后--1:首先连接到我的表--2:在表内'姓名'列中检验下text1.text内容是否已登记过
--3:如没注册过将text1和text2内容保存在'姓名'和'学号'列中
--4:如已经注册过showmessage'该同学已登记过'
'select * from gl where 姓名='+quotedstr(edit1.text)//查询是否存在'Insert into gl values('+quotedstr(edit1.text)+','+quotedstr(edit2.text)+')'//插入数据
procedure TForm1.Button1Click(Sender: TObject);
var sqlstr:srting;
begin
sqlstr:='select 姓名 from GL where 姓名=trim(edit.text)';
ado.query1.close;
ado.query1.sql.add(sqlstr);
ado.query1.open;//执行查询
if ado.query1.recordCount>0 then
showmessage('你已经申请过!') else
begin
sqlstr:='Insert into gl values(trim(edit1.text), trim(edit1.text)';
ado.query1.close;
ado.query1.sql.add(sqlstr);
ado.query1.open;//执行修改
end;
end;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add('select 姓名 from gl where 姓名='+quotedstr(Edit1.text));
ADOQuery1.open;
if ADOQuery1.recordCount >0 then
showmessage( '你已经申请过! ')
else
begin
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add('Insert into gl values( '+quotedstr(edit1.text)+ ', '+quotedstr(edit2.text)+'');
ADOQuery1.open;
end这样写哪里错了
begin
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'select xingming from gl where xingming= '+quotedstr(Edit1.text));
ADOQuery1.Open;
if ADOQuery1.recordCount >0 then
showmessage( '你已经申请过! ')
else
begin
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'Insert into gl values( '+''''+trim(edit1.text)+''''+','+''''+trim(edit2.text)+''''+')');
ADOQuery1.Open;
end;
end;
前面那部分解决了(查询有没登记过)后来的问题
如果没有登记过 将进行登记
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add('Insert into gl(姓名,学号) values ('+trim(Edit1.text)+', '+trim(Edit2.text)+'');
ADOQuery1.ExecSQL;出错‘此处只允许常量,表达试,不能用列名’
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'select 姓名 from gl where 姓名= '''+quotedstr(Edit1.text)+'''');
ADOQuery1.open;
if ADOQuery1.recordCount >0 then
showmessage( '你已经申请过! ')
else
begin
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'Insert into gl values( '''+quotedstr(edit1.text)+ ''', '''+quotedstr(edit2.text)+ '''');
ADOQuery1.open;
end;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'Insert into gl(姓名,学号) values ( '+quotedstr(Edit1.text)+ ', '+quotedstr(Edit2.text)+ ' ');
ADOQuery1.ExecSQL; 出错‘edit2.text内容的附近语法错误’
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add( 'Insert into gl(姓名,学号) values('+quotedstr(Edit1.text)+ ', '+quotedstr(Edit2.text)+ ')');
ADOQuery1.ExecSQL;