最快的,使插入数据库的内容不重复的方法是什么?(100分)

  • 主题发起人 主题发起人 nickey
  • 开始时间 开始时间
N

nickey

Unregistered / Unconfirmed
GUEST, unregistred user!
我好笨啊,, 难道只有每要插入一个数据,就要查找一遍数据库吗?

谢谢大家啦.
 
把不能重复的字段设置为主健
 
insert into table1 (select * from table2 where table2.xx not in (select xx from table1))
 
在数据库设字段为不重复索引
try
插入
except
if conn.error//怎么写不记得了,反正就是判断一下错误是不是记录重复
showmessage('此记录重复');
end;

 
其实有些时候也是没办法的事,例如需要有多个条件才能决定唯一性的时候。。。
 
建立唯一索引。
 
select count(*) from where 条件
if fields[0]>1
 
dhl2001 的方法, 有没有人知道完整的内容? 是捕捉错误吗? 教教我?
 
加一个自增字段。
 
在BDE中可以这样做(你的数据表里应该建有主键)。
procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.SQL.Clear;
Query1.SQL := Memo1.Lines;
try
if (RadioButton1.Checked) then
Query1.ExecSQL
else
Query1.Open;
except
on E:EDBEngineError do
if E.Errors[0].ErrorCode = 9729 then
ShowMessage('主键重复');
end;
end;
 

Similar threads

S
回复
0
查看
860
SUNSTONE的Delphi笔记
S
S
回复
0
查看
787
SUNSTONE的Delphi笔记
S
后退
顶部