时间:2021-05-23
前言
我们经常会遇到一个数据库要访问另一个数据库,或者一台服务器要访问另一台服务器里面的数据库。 那么这个如何实现的呢? 相信看完这篇文章你就懂了!
同一台服务器跨库访问实现
1. 首先创建两个数据库CrossLibraryTable1,CrossLibraryTable2
--创建CrossLibraryTable1脚本:
use master --打开master数据库,一般的创建语句都在master中执行.goif exists (select * from sysdatabases where name='CrossLibraryTable1') drop database CrossLibraryTable1 gocreate database CrossLibraryTable1on primary(name='CrossLibraryTable1_data', ------------ 养成好习惯,数据文件加_datafilename='F:\代码存放\数据库\CrossLibraryTable1_data.mdf', ------------ 一定要是.mdf的文件,代表主数据文件size=5mb, --默认数据库大小maxsize=100mb, --最大容量filegrowth=1mb --增长量)log on(name='CrossLibraryTable1_log', ------------ 养成好习惯,日志文件加_logfilename='F:\代码存放\数据库\CrossLibraryTable1_log.ldf', ------------ 一定要是.ldf的文件,代表日志文件size=1mb, --默认数据库大小filegrowth=10% --增长量)--创建CrossLibraryTable2脚本:
use master --打开master数据库,一般的创建语句都在master中执行.goif exists (select * from sysdatabases where name='CrossLibraryTable2') drop database CrossLibraryTable2 gocreate database CrossLibraryTable2on primary(name='CrossLibraryTable2_data', ------------ 养成好习惯,数据文件加_datafilename='F:\代码存放\数据库\CrossLibraryTable2_data.mdf', ------------ 一定要是.mdf的文件,代表主数据文件size=5mb, --默认数据库大小maxsize=100mb, --最大容量filegrowth=1mb --增长量)log on(name='CrossLibraryTable2_log', ------------ 养成好习惯,日志文件加_logfilename='F:\代码存放\数据库\CrossLibraryTable2_log.ldf', ------------ 一定要是.ldf的文件,代表日志文件size=1mb, --默认数据库大小filegrowth=10% --增长量)然后,执行完脚本后,刷新一下就可以看到刚刚创建的数据库了:
2.接下来在两个数据库里面分别创建一个CrossTest1和一个CrossTest2表用于跨库查询
--创建CrossTest1脚本:
use CrossLibraryTable1 create table CrossTest1( Id int primary key identity, Name nvarchar(20) )--创建CrossTest2脚本:
use CrossLibraryTable2 create table CrossTest2( Id int primary key identity, Name nvarchar(20) )表创建好后,我们再添加几条数据进去:
use CrossLibraryTable1 insert into CrossTest1 values('跨库1测试数据1') insert into CrossTest1 values('跨库1测试数据2') use CrossLibraryTable2 insert into CrossTest2 values('跨库2测试数据1') insert into CrossTest2 values('跨库2测试数据2')切换到CrossLibraryTable1下面查询CrossLibraryTable2的数据可以看到报如下错误
修正代码:
PS:像上面那样是可以进行查询,然而在项目中使用上面的代码格式就会引发一些问题,那什么问题呢?比如另一个数据库的名称改变了,我们就需要把所有用到这个的地方都得改掉,这样就很麻烦,那么有什么解决方案么,使得改一处就好了?当然有,用数据库同义词就可以轻松搞定!
创建同义词步骤如下:
不同服务器跨库访问实现
当数据库在不同服务器上面,用上面的方法就不行了,那如何实现跨服务器访问呢?很简单,看下面↓↓↓
好了,SQL Server跨库跨服务器访问实现就到这了,如果按照步骤一步一步操作的话,相信您也已经实现了,下一篇文章就来谈谈分库分表实现。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文简述了通过创建databaselink实现ORACLE跨数据库查询的方法1.配置本地数据库服务器的tnsnames.ora文件$vi$ORACLE_HOME
基于Python2.7的版本环境,Python实现的数据库跨服务器(跨库)迁移,每以5000条一查询一提交,代码中可以自行更改每次查询提交数目.#-*-codi
1跨域的理解跨域是指:浏览器A从服务器B获取的静态资源,包括Html、Css、Js,然后在Js中通过Ajax访问C服务器的静态资源或请求。即:浏览器A从B服务器
方法一:在目前绝大部分数据库有分布式查询的需要。下面简单的介绍如何在oracle中配置实现跨库访问。比如现在有2个数据库服务器,安装了2个数据库。数据库serv
1.跨域原理1.首先浏览器安全策略限制jsajax跨域访问服务器2.如果服务器返回的头部信息中有当前域://允许http://localhost:8080这个网