我有一個問題,請問什麼是執行此操作的最佳方法: 我有一個數據庫讓我們假設它有4個表(表的數量可以增加得多),當我想對table1,table2和table3執行任何CRUD(插入,更新,刪除)操作我必須對table4執行相同的操作,現在table4非常重要,所以我必須確保所有操作都準確且快速,最終這個表將被用來獲取系統報告,所以我需要它要快 現在它的以下兩種方式會更好:執行此操作的最佳方式
-The第一種方法發生在數據庫中,所以我創建一個存儲過程或觸發 當任何操作都在任何操作中執行(table1,table2,table3),這激活了執行相同操作的觸發器在表4中
第二種方法發生在程序代碼(asp.net和c#)中,當對任何表執行任何操作時,table2,table3)我使用類或任何代碼對table4執行相同的操作。
,並且是我們需要記住,當我們選擇兩種方式,如安全性,數據庫大小,應用架構的事,與... ..
感謝
感謝所有的及時答覆,,, 據我所知,使用觸發器是一個不錯的選擇一些點,但我在想,要是: 我創造一個功能(插入/更新/刪除)在表C並且這個函數可以從任何存儲過程中調用(插入/更新/刪除)tableA和tableB。這將允許我管理一個函數,如果需要更改而不是修改每個存儲過程中的代碼。另外,我可以在每個存儲過程中使用事務來保持所有表中的數據一致。 – students 2010-01-26 17:39:06
我真的很喜歡你的想法。它避免了使用觸發器的開銷,並保留了一段代碼(在由其他存儲過程調用的函數或存儲過程中),因此很容易維護。並測試。此外,如果證明符合要求,您可以包含觸發器不可用的數據。對你有好處! – DOK 2010-01-27 14:35:44