关于数据输入!
1楼: 我是一个新手,请问一下,我在新增资料时,如何确定数据库里已经有此笔资料。在线等,谢谢!
字串2
2楼: 查询呀 可以在OnBeforePost事件处理函数中查询,呵呵字串6
3楼: onBeforeinsert事件中查询判断 字串2
4楼: 实现方法其实很多,你可以参考一下Delphi自带的数据库例程. 字串8 5楼: 这是我做新加用户的代码,可以看一看 procedure TUser.btnaddClick(Sender: TObject); var yhm,mm,uqx,sqlstr:string; begin yhm:=Trim(name_edit.Text); mm:=Trim(pass_edit.Text); uqx:=inttostr(qx_cbox.ItemIndex); if length(yhm)<1 then begin ShowMessage(‘系统用户名不能为空!‘); name_edit.SetFocus; exit; end else if length(mm)<1 then begin ShowMessage(‘用户密码不能为空!‘); pass_edit.SetFocus; exit; end else if qx_cbox.Text=‘‘ then begin ShowMessage(‘请选择用户权限!‘); exit; end; sqlstr:=‘select * from t_user where (user_name=“‘+yhm+‘“)‘; with TADOQuery.Create(nil) do try Close; Connection:=Main.ADOConnection1; sql.Clear; sql.Add(sqlstr); open; if RecordCount>0 then begin [b] ShowMessage(‘添加的系统用户名有重复,请重新输入!‘);[/b] name_edit.SetFocus; exit; end else begin sqlstr:=‘insert into t_user values (‘‘‘+yhm+‘‘‘,‘‘‘+Eury(mm)+‘‘‘,‘‘‘+uqx+‘‘‘)‘; Close; sql.Clear; sql.add(sqlstr); ExecSQL; end; ShowMessage(‘成功添加用户!‘); begin name_edit.Text:=‘‘; pass_edit.Text:=‘‘; qx_cbox.ItemIndex:=-1; name_edit.SetFocus; end; finally Free; end; with ADOQuery1 do begin Close; SQL.Clear; SQL.Add(‘select * from t_user order by user_name‘); Open; end; end;字串6
6楼: 1.在你的数据库中设置一个主键,
2.程序中try
with adodataset do
begin
append;
fieldbyname(‘fieldname‘).value := trim(edit1.text);
//(如果用data contorls中的控件录入数据,此行可不写.);
post;
end;
except
ShowMessage(‘the data is duplicate‘);
end; 字串5 7楼: 请问自带的Delphi自带的数据库是那个?谢谢 字串8 8楼: 多人接受答案了。 字串1 上一篇:关于combox控件刷新的问题 下一篇:DBGRID定位问题(只有六十分了请赐教)