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 ...
随机推荐
- 解读JVM级别本地缓存Caffeine青出于蓝的要诀 —— 缘何会更强、如何去上手
大家好,又见面了. 本文是笔者作为掘金技术社区签约作者的身份输出的缓存专栏系列内容,将会通过系列专题,讲清楚缓存的方方面面.如果感兴趣,欢迎关注以获取后续更新. 在前面的几篇文章中,我们一起聊了下本地 ...
- .Net 7 的AOT的程序比托管代码更容易破解?
楔子 .Net 7的一个重要功能是把托管的源码编译成Native Code,也就是二进制文件.此举看似增加了程序反编译难度,实际上是减少了程序的破解难度.本篇在不触及整个程序架构的前提下,以简单的例子 ...
- 【Markdown编辑器】语法规则
一.Markdown介绍及工具推荐 1.介绍 Markdown是一种轻量级标记语言,它以纯文本形式(易读.易写.易更改)编写文档,并最终以HTML格式发布.Markdown也可以理解为将以MARKDO ...
- idea的简单介绍
上一篇博客中只是了解一下java文件是怎么编译的,但是一般来说大家都是使用编程软件来进行开发,我是使用IntelliJ IDEA进行开发的 官网下载IDEA(自行安装哈):地址:https://www ...
- DVWA靶场实战(二)——Command Injection
DVWA靶场实战(二) 二.Command Injection: 1.漏洞介绍: Command Injection,中文叫做命令注入,是指通过提交恶意构造的参数破坏命令语句结构,从而达到执行恶意命令 ...
- js节流防抖 减少服务器请求
- Stream流中的常用方法_skip-Stream流中的常用方法_concat
Stream流中的常用方法_skip 如果希望跳过前几个元素,可以使用skip方法获取一个截取之后的新流∶ 如果流的当前长度大于n,则跳过前n个;否则将会得到一个长度为0的空流.基本使用: Strea ...
- 朋友圈那串神秘字符背后的开源项目「GitHub 热点速览」
如果你这周没刷到类似 "npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237..." 的一串字符,那就说明本期 GitHub T ...
- 基于 Ubuntu 服务器配置原生的 Socks5 网关代理服务器
常见的代理协议有 http.https.socks4/5 这三种,http协议的代理搭建方案最简单,但是http代理无法访问https网站,https代理无法实现调用远端dns,所以我个人推荐使用Sc ...
- 线程基础知识-CountDownLatch
转:https://blog.csdn.net/hbtj_1216/article/details/109655995 1 概念1.1 简介 CountDownLatch是一个同步工具类,它允许一个或 ...