2011-06-13 267 views
0

管理默認我在擁有約10 DEFAULT限制由兩個或三個不同的表分散在DB工作,我需要寫一個接收的參數值,所有這些屬性的存儲過程。但是,如果未收到任何值,我希望這些參數在相應的表中採用默認值。知道有沒有簡單的方法來做到這一點,我想過寫返回默認值自定義的UDF,添加約束DEFAULT (dbo.SomeFunction()) FOR [Attribute]並添加= dbo.SomeFunction()爲每個參數的默認值。我會,不過,想問問什麼是做到這一點的最好辦法:在存儲過程參數

1)寫一個UDF每個屬性,從而簡化了執行,但有10級不同的功能結束了;或

2)在不同的表/屬性對上寫入單個dbo.GetDefault(TableName NVARCHAR(32), AttributeName NVARCHAR(32)並使用IF ... ELSE ...SWITCH

您認爲如何?

回答

1

你應該有每個默認的UDF。

  • 數據類型將是不一樣的
  • 爲你的代碼的發展,你會在計算列或架構綁定視圖的依賴結束了:它需要使用另一個,它會是混亂改變