在這裏和網絡上搜索後,我終於決定發佈問題。我正在運行SQL 2000服務器,並鏈接了一個Oracle 9i服務器。當我運行查詢時,一切正常,並且甚至使用OPENQUERY方法更新和插入Oracle鏈接服務器(同時使用Microsoft OLE DB驅動程序和Oracle OLE DB驅動程序)。 問題是,爲了清理代碼,我想在我的查詢中使用四個部分名稱。我也在查詢其他SQL鏈接服務器時也這樣做。如何檢索Oracle服務器排序規則以設置鏈接服務器
但是,當我用四個部分組成的名稱對運行的Oracle查詢我得到這個錯誤:(我正在翻譯從西班牙語錯誤消息大概是在英語標識的原始消息不同)
錯誤:OLE DB「MSDAORA '返回了一個無效的列定義。 錯誤代碼:7318
挖掘一點,我瞭解到,這可能與nos在鏈接的服務器屬性中設置了正確的排序規則名稱有關。
現在......我不是甲骨文的專家,所以我需要找出什麼排序規則是我在Oracle中使用的連接模式(應用程序......是的,我知道,我知道......)
所以,簡單的問題是......我如何找出Oracle正在使用的排序規則?我可以通過Toad訪問Oracle服務器...是否有任何查詢可以運行,以便找出答案?
謝謝!
嗨...感謝您的回覆。 我已經試過這個,但通過蟾蜍訪問這些參數...不幸的是,我無法在這裏找到我在找什麼... 這是一個[截圖](http://dl.dropbox.com/u /5654637/imagenes/NLS.png)我得到的參數。你可以看到,唯一可能與我的整理問題有關的兩個參數是** NLS_CHARACTERSET:WE8ISO8859P1 **和** NLS_NCHAR_CHARACTERSET:AL16UTF16 ** – jprealini
如果其中任何一個是,我想我需要找到一個相當於我在[選擇列表](http://dl.dropbox.com/u/5654637/imagenes/collate.png)中看到的分類名稱,當我在SQL中設置鏈接服務器時 也許我缺少東西......任何其他提示? 謝謝 – jprealini
@ jprealini:好吧,看起來你正在使用Latin1(ISO 8859-1)和你的排序規則([NLS_SORT,NLS_COMP](http://download.oracle.com/docs/cd/B19306_01/server)。 102/b14225/ch3globenv。htm#sthref362))是二元的。不知道如何映射到SQL Server。 – derobert