2009-09-30 45 views
4

我在寫一個將部署到第三方數據庫服務器但需要執行存儲在我的數據庫服務器中的存儲過程的SQL CLR程序集。所有的部分都已到位,但我不知道如何使連接字符串可配置。諸如此類的文章:http://msdn.microsoft.com/en-us/library/ms345135(SQL.90).aspx反覆聲明連接字符串不應該在生產中硬編碼(顯然),但對如何使連接字符串可配置不提供任何建議。配置SQL CLR程序集中的遠程數據庫連接字符串

是否有任何方式部署設置文件或以其他方式向SQL CLR 2005程序集提供配置設置?

回答

0

我建議無論是配置表(也由Gratzy建議),或將它們添加到註冊表並期待他們在那裏(假設你運行你的SQL Server作爲代理域用戶,他們的HKCU是最安全的地方)。

註冊表將是我的選擇,因爲它不涉及任何架構更改到數據庫,並不太可能通過客戶端一旦它部署到被意外/故意編輯。

+0

在註冊表中存儲連接字符串似乎是最可維護的建議。幸運的是,讀取訪問HKCU包括在與「外部訪問」權限SQL CLR組件(也需要創建遠程SQL客戶端連接)設置權限。謝謝您的幫助! – warrenm 2009-09-30 16:06:12

0

這裏是Using an Application Configuration (app.config/web.config) File in SQL Server CLR Integration

的文章中,我不知道它會如何對第三方SQL Server實例的工作,雖然。

+0

這是一個非常聰明的技巧,但不幸的是,我不能在生產服務器上使用它。 – warrenm 2009-09-30 15:13:14

+0

你可以在配置表中配置你的配置嗎? – Gratzy 2009-09-30 15:16:21

+0

我真的很討厭不得不這樣做來傳遞配置設置 - 我們在SQL Server和Biztalk中都有這種情況 - 編輯主機應用程序的.config文件。如果你有超過一個或兩個組件執行此操作,那麼它可能會在該文件中非常難看,所以我只會提醒你不要單獨維護。這沒什麼不妥 - 這是官方支持的方法 - 但我不是那種保持所有這些設置的粉絲。 – SqlRyan 2009-09-30 15:26:46