SQLSERVER如何linkoracle數據庫

字號:

SQLSERVER如何link oracle數據庫
    --1 方式
    --查詢oracle數據庫中的表
    SELECT *
    FROM OPENDATASOURCE(
    'MSDAORA',
    'Data Source=GE160;User ID=DAIMIN;Password=DAIMIN'
    )..DAIMIN.JOBS
    --在sqlserver中創(chuàng)建與oracle數據庫中的表同名的表
    select * into JOBS from
    OPENDATASOURCE(
    'MSDAORA',
    'Data Source=GE160;User ID=daimin;Password=daimin'
    )..DAIMIN.JOBS
    select * from JOBS
    --2、方式
    --在master數據庫中查看已經存在的鏈接服務器
    select * from sysservers
    EXEC sp_addlinkedserver
    @server = 'GE160',
    @srvproduct = 'Oracle',
    @provider = 'MSDAORA',
    @datasrc = 'GE160'
    exec sp_addlinkedsrvlogin 'GE160', false, 'sa', 'daimin', 'daimin'
    --要在企業(yè)管理器內指定登錄帳號
    exec sp_dropserver GE160
    select * from GE160..DAIMIN.JOBS
    delete from GE160..DAIMIN.JOBS
    --備注:引用ORACLE服務器上的表時,用戶名稱與表名一定要大寫字母。
    SELECT *
    FROM OPENQUERY(GE160, 'SELECT * FROM DAIMIN.JOBS')
    --3、方式
    SELECT a.*
    FROM OPENROWSET('MSDAORA',
    'GE160';'DAIMIN';'DAIMIN',
    DAIMIN.JOBS) AS a
    ORDER BY a.JOB_ID
    --4、方式 ODBC
    --ODBC方式比較好辦
    SELECT A.*
    FROM OPENROWSET('MSDAORA','GE160';'DAIMIN';'DAIMIN', --GE160是數據源名
    DAIMIN.JOBS) AS A
    ORDER BY A.JOB_ID