我想做个判断,dbedit1.text是否已经存在于ACCESS中的'工号'字段中,该怎样写,我用的是ADO.
解决方案 »
- 请教动态创建checkbox的问题,谢谢!
- 求救:如何实现在单机中,实现两个TidTcpClient线程的正常收发包?
- 我用DELPHI7怎么能把以前用的QUICKREPORT做的打印表编辑修改啊
- 在下有兩個表結合生成一個表單的問題,各位高手新進。。。。。(在線)
- 在InstallShield8中怎样配置BDE,后台数据库用的是sqlserver及制作安装盘的要点
- 简单的问题:为何在delphi7里面找不到QReport控件?
- 散不出去分, 怎么搞的??
- ACCESS局域网两台机同时操作数据库损坏(ADO),解决给200分
- 打印问题!
- 怎么可对某一字段自动求和,本人编写了一段代码,但只能手动求和,能否在onCalcFields事件中添加代码自动求和,十万火急!!!
- 怎样将TadoQuery组件获得的记录一次性存入与之结构相同的数据表中呢?
- 不想用delphi了,是换c++还是java ?哪个有钱途,大家给点建议。
if not ADOQuery1.Locate() then//看Delphi帮助,内有一详例
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ADOQuery1BeforeInsert(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ADOQuery1BeforeInsert(DataSet: TDataSet);
var
qry : TADOQuery;
begin
qry := TADOQuery.Create(nil);
try
qry.Clone(ADOQuery1);
if qry.Locate('a',Trim(Edit1.Text),[]) then
begin
Application.MessageBox(pchar('已經存在'),'提示',MB_OK+MB_ICONWARNING);
abort;
end;
finally
FreeAndNil(Qry);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.Append;
adoquery1.FieldByName('a').Value := Edit1.Text;
ADOQuery1.Post;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
ADOQuery1.Close;
adoquery1.sql.Text := 'select * from test';
ADOQuery1.Open;
end;end.
最好用Select查找一下有没这个记录, with TempADO2 do
begin
Close;
SQL.Clear;
sqlstr := 'Select 1 from SoftTicketTB '
+' where SoftTicketC_ID='+Quotedstr(AdoC.FieldByName('ID').AsString)
+' and UseState<>'+Quotedstr('D');
SQL.Add(sqlstr);
Open ; if TempADO2.RecordCount >0 then
begin
MsShow('某些票号已经存在!');
Abort;
end;
end;
with TempADO2 do
begin
Close;
SQL.Clear;
sqlstr := 'Select 1 from SoftTicketTB '
+' where SoftTicketC_ID='+Quotedstr(AdoC.FieldByName('ID').AsString)
+' and UseState <>'+Quotedstr('D');
SQL.Add(sqlstr);
Open ; if TempADO2.RecordCount >0 then
begin
MsShow('某些票号已经存在!');
Abort;
end;
end;
if not query.empty then
showmessage('存在');
var
q: TADOQuery;
begin
q := TADOquery.Create(nil);
q.Connection := 你的数据链接;
try
q.Sql.Text := 'select * from 表 where 字段='+QuotedStr(dbedit1.text);
q.Open;
if q.IsEmpty then
Result := False
else
Result := True;
finally
q.Free;
end;
end;另外建议不要用dbedit1,用普通的edit,db控件尽量不用