2012-08-01 49 views
2

我有四個表即ie。如何創建sql服務器觸發器,並在mvc3模型中調用它

  • custAddress
  • custCompany
  • custContact和
  • custInfo

所有的表都有'CID'領域常見。

我有一個MVC3視圖中的接口,我將從其中接收除「cId」之外的所有字段的輸入。當我從界面輸入時,所有上述表格都必須填寫。

另外,當我刪除數據時,一旦我從一個表中刪除數據,應該刪除其他三個表中的所有數據。

我不知道如何使用觸發器。請解釋如何使用觸發器或其他方式來做到這一點。任何幫助表示讚賞。

+1

你確定你需要觸發嗎?爲什麼不想手動向所有3個表中插入數據並在刪除數據時使用級聯刪除?觸發器功能強大但存在一些缺點:您無法對其進行單元測試,業務邏輯會分散到多個層中。我認爲這是簡單的情況下使用它們。 – 2012-08-01 05:10:25

+0

你能用一些編碼例子來證明我嗎 – 2012-08-01 05:28:29

+0

是什麼例子?如何更新sql server中的表?我們仍然不知道你是如何訪問數據庫的,例如你有Orm嗎? – 2012-08-01 05:33:48

回答

1

對我來說,這聽起來更像是一個數據庫設計問題。這裏你不需要觸發。將其中一個表保存爲主(可以是CustInfo),並在其上具有其他依賴於表(外鍵關係)的表。在從屬表上使用級聯刪除約束。從CustInfo中刪除數據時,級聯刪除約束將負責刪除從屬表中的相應數據。

+0

你能否給我提供一些編碼的例子 – 2012-08-01 05:28:50