阿
阿虫
Unregistered / Unconfirmed
GUEST, unregistred user!
我的窗口上有个EDIT,我通过它给数据库输入值表号的记录。
我希望当输入的数值在数据库中存在是,出现一个提示,询问是覆盖还是放弃。
可下面这段程序编译时通过了,一执行老提示不在编辑或插入状态,为什么。
那位老兄会,教教俺,我搞了几天了,也没搞好。
procedure TForm1.Button1Click(Sender: TObject);
begin
query1.SQL.clear;
query1.sql.add('select * from yanshi where bh=:key_0');//BH是主键,也是我要判断
//是否重复的值。
query1.requestlive:=true;
query1.Params[0].asstring:=edit1.text;//EDIT1是我用来输入BH的文本框,其它字段记录
//也有相应的EDIT输入其值。
query1.active:=true;
if query1.recordcount=0 then
begin
query1.append;
end
else
begin
if application.messagebox(pchar('数据重复'),'error',mb_yesno+mb_iconquestion)=idyes then
query1.Edit;
end;
if query1.state in [dsedit,dsinsert] then
begin
query1.sql.clear;
query1.sql.add('insert into yanshi(xuh,jh) values(''22'',''供电'')');//我想在这里输入其它的字段内容,其中的字段XUH,JH,
end;
end;
我希望当输入的数值在数据库中存在是,出现一个提示,询问是覆盖还是放弃。
可下面这段程序编译时通过了,一执行老提示不在编辑或插入状态,为什么。
那位老兄会,教教俺,我搞了几天了,也没搞好。
procedure TForm1.Button1Click(Sender: TObject);
begin
query1.SQL.clear;
query1.sql.add('select * from yanshi where bh=:key_0');//BH是主键,也是我要判断
//是否重复的值。
query1.requestlive:=true;
query1.Params[0].asstring:=edit1.text;//EDIT1是我用来输入BH的文本框,其它字段记录
//也有相应的EDIT输入其值。
query1.active:=true;
if query1.recordcount=0 then
begin
query1.append;
end
else
begin
if application.messagebox(pchar('数据重复'),'error',mb_yesno+mb_iconquestion)=idyes then
query1.Edit;
end;
if query1.state in [dsedit,dsinsert] then
begin
query1.sql.clear;
query1.sql.add('insert into yanshi(xuh,jh) values(''22'',''供电'')');//我想在这里输入其它的字段内容,其中的字段XUH,JH,
end;
end;