討論區快速選單
知識庫快速選單
討論區最近新進100則主題 政府補助!學嵌入式+物聯網 軟體開發過程中有哪些資安漏洞?
[ 回上頁 ] [ 討論區發言規則 ]
一個Trigger的問題
更改我的閱讀文章字型大小
作者 : hellojimmy(Jimmy) 貼文超過200則人氣指數超過10000點
[ 貼文 229 | 人氣 27345 | 評價 30 | 評價/貼文 0.13 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/9/8 下午 05:04:26
大家好:
假設我有三個Table:Table_1, Table_2, Table_3,
三個Table的欄位相同如下:
[Field_1] [int],
[Field_2] [Char(5)].
當有一筆Record Insert到Table_1時,
如果Field_1=1,則Insert到Table_2,並從Table_1 Delete之.
如果Field_1=2,則Insert到Table_3,並從Table_1 Delete之.
除此以外的值則不變動.
請問這樣一個Trigger與法該怎麼寫呢?
謝謝!


作者 : pcjung(max)
[ 貼文 117 | 人氣 1792 | 評價 630 | 評價/貼文 5.38 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/9/10 上午 08:27:33
在 Table1 建立"事前"trigger即可。

Create trigger tI_table_1 on table_1
INSTEAD OF INSERT
AS
Declare @Field_1 int

Select @Field_1 = Field_1 From INSERTED

IF @Field_1 = 1
  Insert Into Table_2
  Select * from INSERTED
Else if @Field_1 = 2
  Insert Into Table_3
  Select * from INSERTED
GO

PS: 如果一次 Insert 語法可能有多筆時,建議在Trigger 用cursor來進行遂筆判斷再寫入Table_2或Table_3。


作者 : vicky1225(vicky)
[ 貼文 45 | 人氣 2164 | 評價 60 | 評價/貼文 1.33 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2008/9/10 上午 10:54:25
這種開Table的方式聽起來好奇怪喔....(Table-1,Table-2,Table-3)

如果Table中欄位`屬性都相同,為什麼不整在同一個Table裡就好咧??

再用一個Type的欄位區分它就好了阿...

 板主 : 徵求中
 > SQL Server 7/2000 - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - SQL Server 7/2000 - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
SQL Server 7/2000
1 小朱 1540 
2 小台 1520 
3 Gordon 600 
4 ㄉ一ˊㄎㄜˋ 580 
5 路人 490 
6 max 470 
7 william 410 
8 Aries 250 
9 阿利 180 
10 羅啟章 160 
SQL Server 7/2000
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2019 程式設計俱樂部 http://www.programmer-club.com.tw/
0.03125