|
導(dǎo)讀數(shù)據(jù)庫(kù),簡(jiǎn)而言之可視為電子化的文件柜——存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作。所謂“數(shù)據(jù)庫(kù)”是以一定方式儲(chǔ)存在一起、能與多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)... 數(shù)據(jù)庫(kù),簡(jiǎn)而言之可視為電子化的文件柜——存儲(chǔ)電子文件的處所,用戶可以對(duì)文件中的數(shù)據(jù)進(jìn)行新增、截取、更新、刪除等操作。所謂“數(shù)據(jù)庫(kù)”是以一定方式儲(chǔ)存在一起、能與多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)用程序彼此獨(dú)立的數(shù)據(jù)集合。 一、使用 Microsoft OLE DB Provider For ODBC 鏈接MySQL 安裝MySQL的ODBC驅(qū)動(dòng)MyODBC 1、為MySQL建立一個(gè)ODBC系統(tǒng)數(shù)據(jù)源,例如:選擇數(shù)據(jù)庫(kù)為test ,數(shù)據(jù)源名稱為myDSN 2、建立鏈接數(shù)據(jù)庫(kù) EXEC sp_addlinkedserver @server = ’MySQLTest’, @srvproduct=’MySQL’, @provider = ’MSDASQL’, @datasrc = ’myDSN’ GO EXEC sp_addlinkedsrvlogin @rmtsrvname=’MySqlTest’,@useself=’false’,@locallogin=’sa’,@rmtuser=’mys ql的用戶名’,@rmtpassword=’mysql的密碼’ 3、查詢數(shù)據(jù) SELECT * FROM OPENQUERY (MySQLTest ,’select * from 表’ ) 下面這個(gè)不行: SELECT * FROM OPENQUERY (MySQLTest ,’表’ ) 注意:不能直接用select * from 鏈接服務(wù)器名.數(shù)據(jù)庫(kù)名.用戶名.表(或視圖) 四部分名稱查詢數(shù)據(jù),可能是個(gè)Bug. 二、使用 Microsoft OLE DB Provider For ORACLE 鏈接ORACLE 1、建立鏈接數(shù)據(jù)庫(kù) sp_addlinkedserver ’別名’, ’Oracle’, ’MSDAORA’, ’服務(wù)名’ GO EXEC sp_addlinkedsrvlogin @rmtsrvname=’別名 ’,@useself=’false’,@locallogin=’sa’,@rmtuser=’oracle用戶名 ’,@rmtpassword=’密碼’ 2、查詢數(shù)據(jù) SELECT * FROM 別名..用戶名.表(視圖) 注意:四部分名稱全部用大寫 3、執(zhí)行存儲(chǔ)過(guò)程 使用OPENQUERY: SELECT * FROM OPENQUERY(別名, ’exec 用戶名.存儲(chǔ)過(guò)程名’) 三、設(shè)置鏈接服務(wù)器以訪問(wèn)格式化文本文件 用于 Jet 的 Microsoft OLE DB 提供程序可用于訪問(wèn)并查詢文本文件。 若要直接創(chuàng)建訪問(wèn)文本文件的鏈接服務(wù)器而不將文件鏈接為 Access .mdb 文件中的表,請(qǐng)行 sp_addlinkedserver,如下例所示。 提供程序是 Microsoft.Jet.OLEDB.4.0,提供程序字符串為"Text"。數(shù)據(jù)源是包含文本文件的目錄的完整路徑名稱。schema.ini 文件(描述文本文件的結(jié)構(gòu))必須與此文本文件存在于相同的目錄中。有關(guān)創(chuàng)建 schema.ini 文件的更多信息,請(qǐng)參見(jiàn) Jet 數(shù)據(jù)庫(kù)引擎文檔。 --Create a linked server. EXEC sp_addlinkedserver txtsrv, ’Jet 4.0’, ’Microsoft.Jet.OLEDB.4.0’, ’c:\data\distqry’, NULL, ’Text’ GO --Set up login mappings. EXEC sp_addlinkedsrvlogin txtsrv, FALSE, NULL, Admin, NULL GO --List the tables in the linked server. EXEC sp_tables_ex txtsrv GO --Query one of the tables: file1#txt --using a 4-part name. SELECT * FROM txtsrv...[file1#txt] [page_break]四、鏈接SQL Server服務(wù)器: 1、使用 ODBC 的 Microsoft OLE DB 提供程序 EXEC sp_addlinkedserver ’別名’,’’,’MSDASQL’,NULL,NULL,’DRIVER={SQL Server};SERVER=遠(yuǎn)程名;UID=用戶;PWD=密碼;’ 如果加上參數(shù)@catalog,可以指定數(shù)據(jù)庫(kù) exec sp_addlinkedsrvlogin @rmtsrvname=’別名 ’,@useself=’false’,@locallogin=’sa’,@rmtuser=’sa’,@rmtpassword=’密碼’ 2、使用SQL Server 的 Microsoft OLE DB 提供程序 exec sp_addlinkedserver @server=’別名 ’,@provider=’sqloledb’,@srvproduct=’’,@datasrc=’遠(yuǎn)程服務(wù)器名’ exec sp_addlinkedsrvlogin @rmtsrvname=’wzb’,@useself=’false’,@locallogin=’sa’,@rmtuser=’sa’,@rmtp assword=’密碼’ 然后你就可以如下: select * from 別名.庫(kù)名.dbo.表名 insert 庫(kù)名.dbo.表名 select * from 別名.庫(kù)名.dbo.表名 select * into 庫(kù)名.dbo.新表名 from 別名.庫(kù)名.dbo.表名 go 例1、 此示例在 SQL Server 的實(shí)例上創(chuàng)建一臺(tái)名為 S1_instance1 的鏈接服務(wù)器, 該服務(wù)器使用 SQL Server 的 Microsoft OLE DB 提供程序。 EXEC sp_addlinkedserver @server=’S1_instance1’, @srvproduct=’’, @provider=’SQLOLEDB’, @datasrc=’S1\instance1’ 例2、 --建立鏈接服務(wù)器 EXEC sp_addlinkedserver ’xiaoming’,’’,’MSDASQL’,NULL,NULL,’DRIVER={SQL Server};SERVER=192.168.0.1;UID=sa;PWD=123;’ --建立鏈接服務(wù)器登錄映射 exec sp_addlinkedsrvlogin @rmtsrvname=’xiaoming’,@useself=’false’,@locallogin=’sa’,@rmtuser=’sa’, @rmtpassword=’123’ go --查詢數(shù)據(jù) select * from xiaoming.schooladmin.dbo.agent --刪除鏈接服務(wù)器登錄映射和鏈接服務(wù)器: exec sp_droplinkedsrvlogin ’xiaoming’ ,’sa’ exec sp_dropserver ’xiaoming’ 注意事項(xiàng): SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF } 所以不能通過(guò)連接服務(wù)器設(shè)置此屬性 into 也存在這樣的問(wèn)題 select * into xiaoming.northwind.dbo.tt from xiaoming.northwind.dbo.tt [page_break]五、設(shè)置鏈接服務(wù)器以訪問(wèn)Access數(shù)據(jù)庫(kù) 使用用于 Jet 的 Microsoft OLE DB 提供程序 此示例創(chuàng)建一臺(tái)名為 test的鏈接服務(wù)器。 說(shuō)明 本示例假設(shè)已經(jīng)安裝 Microsoft Access 和示例 Northwind 數(shù)據(jù)庫(kù),且 Northwind 數(shù)據(jù)庫(kù)駐留在 C:\。 USE master GO -- To use named parameters: EXEC sp_addlinkedserver @server = ’test’, @provider = ’Microsoft.Jet.OLEDB.4.0’, @srvproduct = ’OLE DB Provider for Jet’, @datasrc = ’C:\Northwind.mdb’ GO -- OR to use no named parameters: USE master GO EXEC sp_addlinkedserver ’test’, ’OLE DB Provider for Jet’, ’Microsoft.Jet.OLEDB.4.0’, ’C:\Northwind.mdb’ GO 使用 select * from test...表名 六、連接SYBASE --首先,你要在SQL服務(wù)器上裝上訪問(wèn)sybase的客戶端 --創(chuàng)建鏈接服務(wù)器 exec sp_addlinkedserver ’Sybase1’, ’ ’, ’MSDASQL’, NULL, NULL ,’Driver={Sybase System 11};Database=hisdb;Srvr=10.211.135.12;UID=sa;PWD=1111;’ 使用: select * from Sybase1.hisdb.dbo.table1 方法二 使用ODBC SQL Server到SYBASE連接服務(wù)器的實(shí)現(xiàn) 作者: CCBZZP 本文的測(cè)試環(huán)境為: 操作系統(tǒng): WINDOWS2000 SERVER (繁體系統(tǒng)) 安裝數(shù)據(jù)庫(kù): SQLSERVER2000(英文版)和SYBASE8.0客戶端(英文版) 具體實(shí)現(xiàn)步驟: 1.要求pc機(jī)上安裝SYBASE8.0客戶端軟件和sqlserver2000軟件。 2.配置windows的ODBC數(shù)據(jù)源: 開(kāi)始菜單—》程式集—》系統(tǒng)管理工具—》資料數(shù)據(jù)源(ODBC)—》進(jìn)入配置用戶DSN或者系統(tǒng)DSN均可以:添加—》選擇ADAPTIVE SERVER ANYWHERE8.0—》自定義數(shù)據(jù)源名稱(隨意如: SYBASETEST)—》數(shù)據(jù)庫(kù)名稱(必選!)—》OK完成。 3. 選擇剛才配置的數(shù)據(jù)源名稱, 再選擇 配置, 跳出SYBASETEST MESSAGES: The data source is not connected. Connecting to the data source will provide useful information during configuration. Would you like to connect to the data source? 選擇YES(OK或確認(rèn))即可 進(jìn)入CONNECT TO SYBASE DATABASE畫面: USER ID: 輸入SYBASE DATABASE的用戶 PASSWORD: 輸入SYBASE DATABASE的用戶的密碼 CONNECTION MODE: 可以選擇默認(rèn)的SHARE模式 選擇OK(確認(rèn))即可! 配置和測(cè)試ODBC完成! 4.配置sqlserver2000中的連接服務(wù)器: 企業(yè)管理器—》安全性—》連接服務(wù)器—》右鍵新建連接服務(wù)器—》定義連接名稱; 選其他數(shù)據(jù)源; 指定程序名稱為:SYBASE ADAPTIVE SERVER ANYWHERE PROVIDER8.0; 產(chǎn)品名稱可不填; 數(shù)據(jù)源指定剛才ODBC中定義好的數(shù)據(jù)源名稱;提供程序字符串按以下格式填寫:User ID=username;Password=userpasswd(或者按如下格式:UID=username;PWD=userpasswd),這里的用戶名和密碼對(duì)應(yīng)所要連接的SYBASE數(shù)據(jù)庫(kù)中的用戶名和密碼 —》 安全性標(biāo)簽頁(yè)里:設(shè)置用此安全上下文進(jìn)行,并錄入SYBASE的數(shù)據(jù)庫(kù)用戶名和密碼—》服務(wù)器選項(xiàng)標(biāo)簽頁(yè)可默認(rèn)—》確定。 5.準(zhǔn)備工作全部完成!在sqlserver企業(yè)管理器—》安全性—》連接服務(wù)器打開(kāi)剛建好的連接服務(wù)器—》點(diǎn)擊表,即可在右邊窗口看到該SYBASE數(shù)據(jù)庫(kù)用戶擁有的所有表名,但在這里還并不能查看表的記錄,這個(gè)需要在sqserver的查詢分析器中用具體sql實(shí)現(xiàn)!訪問(wèn)表時(shí),使用格式為: [連接服務(wù)器名]..[SYBASE用戶].[表名]。 全新的路由器不僅讓你更穩(wěn)定快速地連接無(wú)線網(wǎng)絡(luò),更可以讓家中的智能設(shè)備連接在一起。 |
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!