SQL 메모 (1) 인덱스 / 트리거

6290 단어 sql
--      

create clustered index ix_tbl_test_DocDate

on tbl_test(DocDate)

with fillfactor=30

GO



--       

create nonclustered index ix_tbl_test_DocNo

on tbl_test(DocNo)

with fillfactor=30

GO



--    

drop index tbl_test.ix_tbl_test_DocDate

drop index tbl_test.ix_tbl_test_DocNo

GO



--     

create trigger trg_udf_test_TransLine

on tbl_test

for insert,delete,update

as

    --update

    if exists(select 1 from inserted) and exists(select 1 from deleted)

        update a set a.DocNo=b.DocNo,a.DocLineNo=b.DocLineNo,a.Org=b.Org,a.Wh=b.Wh,a.DocDate=b.DocDate,

        a.ItemInfo_ItemID=b.ItemInfo_ItemID,a.StoreMainQty=b.StoreMainQty,a.Direction=b.Direction

        from tbl_A a

        inner join inserted b on a.ID=b.ID

    --insert

    else if exists(select 1 from inserted)

        insert into tbl_A(ID,DocNo,DocLineNo,Org,Wh,ItemInfo_ItemID,StoreMainQty,DocDate,Direction)

        select ID,DocNo,DocLineNo,Org,Wh,ItemInfo_ItemID,StoreMainQty,DocDate,Direction

        from inserted

    --delete

    else if exists(select 1 from deleted)

        delete from tbl_A where ID in(select ID from deleted)

GO



--     

alter table tbl_test disable trigger trg_udf_test_TransLine



--     

alter table tbl_test enable  trigger trg_udf_test_TransLine



--     

drop trigger trg_udf_test_TransLine

GO

좋은 웹페이지 즐겨찾기