【发布时间】:2014-03-08 11:08:41
【问题描述】:
(使用 Oracle)我有一个表,其中一列 (myCol) 是主键。
在进行插入时,在进行插入之前使用 select 语句检查是否更快,或者只是编写插入并让错误处理检查它?
这样会更快吗?
BEGIN
SELECT count(*) INTO v_count FROM myTbl WHERE myCol = v_newVal;
IF v_count = 0 THEN
INSERT INTO myTbl (myCol) VALUES (v_newVal);
END IF;
END;
还是这个?
BEGIN
INSERT INTO myTbl (myCol) VALUES (v_newVal);
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
null;
END;
谢谢!
【问题讨论】:
标签: sql oracle insert duplicates primary-key