SQL SERVER连接oracle数据库几种方法

--1 方式

--查询oracle数据库中的表

sql 复制代码
SELECT * 
FROM OPENDATASOURCE( 
'MSDAORA', 
'Data Source=GE160;User ID=DAIMIN;Password=DAIMIN' 
)..DAIMIN.JOBS

举一反三:在查询分析器中输入:

sql 复制代码
SELECT * 
FROM OPENDATASOURCE( 
'MSDAORA', 
'Data Source=ORCL;User ID=SYSTEM;Password=manager' 
)..HKDY.S_HD_HKDY

--在sqlserver中创建与oracle数据库中的表同名的表

sql 复制代码
select * into JOBS from 
OPENDATASOURCE( 
'MSDAORA', 
'Data Source=GE160;User ID=daimin;Password=daimin' 
)..DAIMIN.JOBS

select * from JOBS

--2、方式

--在master数据库中查看已经存在的链接服务器

sql 复制代码
select * from sysservers

EXEC sp_addlinkedserver 
@server = 'GE160', 
@srvproduct = 'Oracle', 
@provider = 'MSDAORA', 
@datasrc = 'GE160'

exec sp_addlinkedsrvlogin 'GE160', false, 'sa', 'daimin', 'daimin'

--要在企业管理器内指定登录帐号

sql 复制代码
exec sp_dropserver GE160

select * from GE160..DAIMIN.JOBS

delete from GE160..DAIMIN.JOBS

--备注:引用ORACLE服务器上的表时,用户名称与表名一定要大写字母。

sql 复制代码
SELECT * 
FROM OPENQUERY(GE160, 'SELECT * FROM DAIMIN.JOBS')

--3、方式

sql 复制代码
SELECT a.* 
FROM OPENROWSET('MSDAORA', 
'GE160';'DAIMIN';'DAIMIN', 
DAIMIN.JOBS) AS a 
ORDER BY a.JOB_ID

--4、方式 ODBC

--ODBC方式比较好办

sql 复制代码
SELECT A.* 
FROM OPENROWSET('MSDAORA','GE160';'DAIMIN';'DAIMIN', --GE160是数据源名 
DAIMIN.JOBS) AS A 
ORDER BY A.JOB_ID
相关推荐
数智化管理手记4 小时前
精益生产中的TPM管理是什么?一文破解设备零故障的密码
服务器·网络·数据库·低代码·制造·源代码管理·精益工程
翊谦4 小时前
Java Agent开发 Milvus 向量数据库安装
java·数据库·milvus
難釋懷5 小时前
OpenResty实现Redis查询
数据库·redis·openresty
别抢我的锅包肉5 小时前
【MySQL】第四节 - 多表查询、多表关系全解析
数据库·mysql·datagrip
Database_Cool_5 小时前
OpenClaw-Observability:基于 DuckDB 构建 OpenClaw 的全链路可观测体系
数据库·阿里云·ai
刘~浪地球6 小时前
Redis 从入门到精通(五):哈希操作详解
数据库·redis·哈希算法
zzh0816 小时前
MySQL高可用集群笔记
数据库·笔记·mysql
Shely20177 小时前
MySQL数据表管理
数据库·mysql
爬山算法7 小时前
MongoDB(80)如何在MongoDB中使用多文档事务?
数据库·python·mongodb
APguantou7 小时前
NCRE-三级数据库技术-第2章-需求分析
数据库·需求分析