createorreplace
trigger
addcsutsame
before
insert
onbd_cubasdoc
foreach row
declare
--local variables here
pk_bas varchar2(200
);
cursor basjob(id varchar2)is
select custname from
bd_cubasdoc
where custname=
id
and nvl(dr,0)=
0and custname in (select custname from
bd_cubasdoc)
/*and length(custname)>3*/;
begin
open
basjob(:new.custname) ;
loop
fetch
basjob
into
pk_bas;
exit
when basjob%
notfound;
endloop;
close
basjob;
if pk_bas is
notnull
then
begin
-20001,pk_bas||
'客商名稱重複,請直接修改已存在客商增行!');
end;
endif
;end addcsutsame;
一直在用這個觸發器,本來是要讓一路提意見:游標定義中使用了and custname in (select custname from
bd_cubasdoc),以後隨著客商資料的增加,會不會導致軟體端操作低效率,因為單純查詢(select custname from
bd_cubasdoc)就會耗時2.188s(目前有近一萬的客商)
沒有想到一路一看到了我這個游標的問題,and custname in (select custname from
bd_cubasdoc)這句話是可以不要的。因為前面已經有了select custname from
bd_cubasdoc
Dictionary 新增重複的鍵值對
上 region 測試dictionary如何新增鍵重複的內容 public class mydictionarycomparer iequalitycomparer public int gethashcode string obj public static void csdictionary ...
Linux增加 重要的Shell環境配置檔案
使用者登入linux系統後,通常接觸的第乙個軟體環境就是bash命令解釋程式,這是除了系統核心之外最重要的軟體環境。在linux系統中,軟體環境的配置資訊通常都存放在一些配置檔案中。以下是一些較為重要的shell環境配置檔案 etc bashrc 包含系統定義的命令別名和bash的環境變數定義。et...
新增 修改時不可新增重複名稱的重複性校驗解決方案
需求 要求在新增 修改門店名稱時,不可以重複新增名稱的問題 int exist commonservice.getlistfortotal existstorebyid storebean if exist 0 sql 的使用 existstorebyid count resulttype int ...