遇到的坑
在連接Oracle時,因為服務器為10g 32位版本,然后在本地安裝了32為10g客戶端,然后一直報錯【7302、7303】,后來下載了12c 64位版本,安裝成功后,問題解決
原因:mssql和oracle只能進行相同位數版本的連接
由於連接mysql時直接用的odbc連接,所以未碰到版本沖突,如有沖突請告訴我一下哈
/* MSSQL --創建遠程鏈接 EXEC sp_addlinkedserver @server='PACS_LINK', --被訪問的服務器別名 @srvproduct='', --SqlServer默認不需要寫,或ORACLE @provider='SQLOLEDB', --不同的庫都是不一樣的,OLE DB字符 @datasrc='59.110.5.215,51800'--要訪問的服務器 GO EXEC sp_addlinkedsrvlogin @rmtsrvname='PACS_LINK', --被訪問的服務器別名 @useself='false', --固定這么寫 @locallogin='sa', --本地操作應戶名 @rmtuser='testpass', --被訪問的服務器用戶名 @rmtpassword='1qaz@WSX'--被訪問的服務器用密碼 GO ----//刪除連接服務器 --EXEC sp_dropserver "PACS_LINK" -- select * from PACS_LINK.[NewNanNingSystemDB].[dbo].[V_DeviceList] */ /* MYSQL --建立數據庫鏈接服務器 EXEC sp_addlinkedserver @server =N'LIS_LINK', --要創建的鏈接服務器別名 @srvproduct=N'MYSQL', --產品名稱 @provider=N'MSDASQL', --OLE DB 驅動名稱(固定) @datasrc=N'mysql' --數據源(需要修改,格式 ip:端口/SERVICE_NAME) GO EXEC sp_addlinkedsrvlogin @rmtsrvname='LIS_LINK', --已建立的鏈接服務器名 @useself='false', -- 固定 * @locallogin= NULL, --為每個登陸SQL SERVER的用戶使用此鏈接服務器,則寫用戶名*固定 @rmtuser='root', --帳號(需要修改) @rmtpassword='inteall' --密碼(需要修改) GO ----//刪除連接服務器 -- EXEC sp_dropserver "LIS_LINK" -- SELECT * FROM OPENQUERY([LIS_LINK], 'SELECT * FROM lisinterface.temp ') */ /* ORACLE --建立數據庫鏈接服務器 EXEC sp_addlinkedserver @server =N'HIS_LINK', --要創建的鏈接服務器別名 @srvproduct=N'ORACLE', --產品名稱(固定) @provider=N'OraOLEDB.Oracle', --OLE DB 驅動名稱(固定) @datasrc=N'ORCL1' --數據源(需要修改,格式 ip:端口/SERVICE_NAME) GO EXEC sp_addlinkedsrvlogin 'HIS_LINK', --已建立的鏈接服務器名 'false', -- 固定 * NULL, --為每個登陸SQL SERVER的用戶使用此鏈接服務器,則寫用戶名*固定 'hisdata', --帳號(oracle)(需要修改) 'inteall2012' --密碼(oracle)(需要修改) GO ----//刪除連接服務器 -- EXEC sp_dropserver "HIS_LINK" -- SELECT * FROM OPENQUERY([HIS_LINK], 'SELECT * FROM V_INTEFACECOSEDETAIL ') --select * from openquery(HIS_LINK,'select * from temp') */