我已經使用了Delphi一年的UniDac VCL組件,但最近開始使用SQL Server 2012開發一個相當大的項目,我想在不同的方案中分開表和存儲過程,我的整個邏輯是因此存儲過程中沒有查詢的程序中只有存儲過程的名稱和參數。UniDac找不到存儲過程架構
的問題是,當我從dbo
改變我的存儲過程的模式,讓我們說SchemaA
,然後嘗試從德爾福運行它TUniStoredProc
組件發現它ProcedureName
而不是SchemaA.ProcedureName
會拋出沒有找到存儲過程的例外執行。
我不能爲不同的用戶分配不同的模式作爲他們的默認方案,因爲有些用戶根據權限使用4-6個方案。我已經嘗試過的是手動輸入SchemaA.ProcedureName
,而且完美地工作,但對於約150個組件需要花費很多時間,所以我正在尋找更好的解決方案。
有什麼想法?
所以你的問題實際上是:如何在我的所有'TUniStoredProc'組件中將過程名稱從「ProcedureName」更改爲「SchemaA.ProcedureName」?他們全都在數據模塊中,還是分散在你自己的表單之中? –
whell有更多的架構比一個不完全的選擇:P我的問題更多的是如何強制TUniStoredProc自動檢測架構或在服務器中作出正確的權限,如果用戶有db_owner,他可以看到所有的沒有指定存儲過程模式的模式,是的,我所有的存儲過程組件都在兩個獨立的數據模塊中有任何想法? :) – AirWolf