Oracle & MSSql 数据库表映射方法(dblink or other)
一、Oracle
1.在旧库创建公共链接
命名为 bidblink
create public database link bidblink connect to c##v26_xxxx IDENTIFIED BY c##v26_xxxx
using '(DESCRIPTION =(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.x.x)(PORT = 1521)) )(CONNECT_DATA =(SERVICE_NAME = orcl) ))';
2.在新库查看旧库的 tenant 表
select * from tenant@bidblink
3.映射表
create public synonym tenant for tenant@bidblink;
4.删除映射表
drop public synonym tenant;
二、MSSql
1、dblink 方法
创建dblink,语法如下:
--建立外部数据库链接
exec sp_addlinkedserver
@server='SPM_Release',--链接服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='xx.xx.xx.xx'
--建立登录映射
exec sp_addlinkedsrvlogin
'SPM_Release', --链接服务器别名
'false',
NULL,
'', --要访问的数据库的用户
'' --密码
(注意,没使用默认端口1433的话,需要输入端口号,逗号隔开 @datasrc='xx.xx.xx.xx,xx')
查询所有dblink(PS:结果为所有数据库链接,如果未添加其他外部链接,则只有一条数据表示当前链接)
select * from sys.servers;
查询link的表数据,语法如下:
select * from SPM_Release.enpcdb.dbo.psmlb;
删除dblink
exec sp_droplinkedsrvlogin 'SPM_Release',null
exec sp_dropserver 'SPM_Release'
2、OPENDATASOURCE 方法
在使用这个方法之前,需要执行:
--有顺序的,授权正序set 1,取消反序set 0,逐步reconfigure
exec sp_configure 'show advanced options',1;
reconfigure;
exec sp_configure 'Ad Hoc Distributed Queries',1;
reconfigure;
查询语法如:
select * from OPENDATASOURCE(
'SQLOLEDB',
'Server=xx.xx.xx.xx;User id=sa;Pwd=xx;Database=xx'
).enpcspmp.dbo.enpcdb p
通过这个方法进行数据库表映射,如果只是简单查询还可以,但是涉及复杂sql,带上链接参数总觉得不友好
因此,我们可以通过以上select语句,创建一个视图,来简化sql
至此!!
@datasrc='xx.xx.xx.xx'
Oracle & MSSql 数据库表映射方法(dblink or other)的更多相关文章
- 创建动态MSSQL数据库表的方法
代码如下: ImportsSystem.Data ImportsSystem.Data.SqlClient PublicClassForm1 InheritsSystem.windows.Forms. ...
- ORACLE跨数据库查询的方法
原文地址:http://blog.csdn.net/huzhenwei/article/details/2533869 本文简述了通过创建database link实现Oracle跨数据库查询的方法 ...
- 关于Oracle.ManagedDataAccess数据库表加字段后,必须重启的问题
关于Oracle.ManagedDataAccess数据库表加字段后,必须重启的问题,解决方法如下:在数据库连接字串中,增加一个参数:Metadata Pooling=false如“Data Sour ...
- Atitit.mssql 数据库表记录数and 表体积大小统计
Atitit.mssql 数据库表记录数and 表体积大小统计 1. EXEC sp_MSforeachtable "EXECUTE sp_spaceused '?'&quo ...
- --oracle删除数据库表(无主键)中重复的记录
--oracle删除数据库表(无主键)中重复的记录 1, CREATE TABLE newtable as SELECT distinct * FROM T_SYSTEM_MENU_PRIV; 2, ...
- 03HibernateJAVA类与数据库表映射配置
HibernateJAVA类与数据库表映射配置
- 数据库表结构设计方法及原则(li)
数据库设计的三大范式:为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满 ...
- Oracle 10 - 数据库表
Oracle数据库表类型 1.堆表 2.索引组织表 3.索引clustered表 4.散列clustered表 5.有序散列clustered表 6.嵌套表 7.临时表 8.对象表 9.外部表 Ora ...
- MySQL开启federated引擎实现数据库表映射
1.查看federated引擎是否开启 点击进入Navicat并点击键盘上F6,出现命令行界面 ,输入指令:show engines; 2.开启federated引擎 Windows系统 : 在my. ...
- 数据库表映射到MyEclipse的实体对象
第一步:新增一个项目 第二步:在项目中新增一个包 第三步:将项目变为SSH (1)加Hibernate 选中项目点击右键,选择MyEclipse→project Facets→ 选择Hiberbate ...
随机推荐
- NavigationDuplicated Navigating to current location (“/XXX”) is not allowed
导航不允许导航到当前位置https://stackoverflow.com/questions/57837758/navigationduplicated-navigating-to-current- ...
- 一文带你搞懂 Google 发布的新开源项目 GUAC
随着软件供应链攻击的显著增加,以及 Log4j 漏洞带来的灾难性后果和影响,软件供应链面临的风险已经成为网络安全生态系统共同关注的最重要话题之一.根据业内权威机构 Sonatype 发布的2022软件 ...
- psutil模块使用(系统监控,性能分析,进程管理)
psutil模块的介绍 在Python中,我们可以使用psutil这个第三方模块去获取信息的信息. psutil模块可以跨平台使用,支持Linux/UNIX/OSX/Windows等,它主要用来做系统 ...
- 解决 ERROR: Could not find a version that satisfies the requirement xxx 的问题
解决 ERROR: Could not find a version that satisfies the requirement xxx 的问题 1.解决 ERROR: Could not find ...
- docker registry(私库)搭建,使用,WEB可视化管理部署
Docker Registry 是Docker官方一个镜像,可以用来储存和分发Docker镜像.目前比较流行的两个镜像私库是Docker Registry ,HarBor 其中HarBor最合适企业级 ...
- java逻辑运算&&与&的区别
本文主要阐述&&(短路与)和&(逻辑与)的运算异同:a && b 和 a&b : 共同之处是只有a和b同时为真时,结果才为真,否则为假 不同点在于 a ...
- Spark详解(05-1) - SparkCore实战案例
Spark详解(05-1) - SparkCore实战案例 数据准备 1)数据格式 本项目的数据是采集电商网站的用户行为数据,主要包含用户的4种行为:搜索.点击.下单和支付. (1)数据采用_分割字段 ...
- P8855 [POI2002]商务旅行
简要题意 给出一个 \(N\) 个节点的树和一个长度为 \(M\) 的序列 \(S\).你需要从 \(1\) 出发,依次经过 \(S\) 中的所有点,求至少需要经过的边数. \(1 \le N \le ...
- Hugging News #0106
每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新.社区活动.学习资源和内容更新.开源库和模型更新等,我们将其称之为「Hugging Ne ...
- Docker 基础 - 2
容器操作系统类型 Busybox 集成了一百多个最常用 Linux 命令和工具的软件工具箱. 包含cat echo grep find mount telnet 等 Busybox 是Linux 系统 ...