主頁 > 知識庫 > SQL Server實現(xiàn)跨庫跨服務(wù)器訪問的方法

SQL Server實現(xiàn)跨庫跨服務(wù)器訪問的方法

熱門標(biāo)簽:優(yōu)質(zhì)地圖標(biāo)注 武漢長沙外呼系統(tǒng)方法和技巧 奧威地圖標(biāo)注多個地方 百度地圖標(biāo)注不同路線 怎樣在地圖上標(biāo)注路線圖標(biāo) 京華物流公司地圖標(biāo)注 智能語音外呼系統(tǒng)選哪家 千呼電銷機器人價格 外呼系統(tǒng)電銷專用

前言

我們經(jīng)常會遇到一個數(shù)據(jù)庫要訪問另一個數(shù)據(jù)庫,或者一臺服務(wù)器要訪問另一臺服務(wù)器里面的數(shù)據(jù)庫。 那么這個如何實現(xiàn)的呢? 相信看完這篇文章你就懂了!

同一臺服務(wù)器跨庫訪問實現(xiàn)

1. 首先創(chuàng)建兩個數(shù)據(jù)庫CrossLibraryTable1,CrossLibraryTable2

--創(chuàng)建CrossLibraryTable1腳本:

use master --打開master數(shù)據(jù)庫,一般的創(chuàng)建語句都在master中執(zhí)行.
go
if exists (select * from sysdatabases where name='CrossLibraryTable1')
 drop database CrossLibraryTable1 /*檢查有沒有這個數(shù)據(jù)庫,如果有就刪除它。*/
go
create database CrossLibraryTable1
on primary
(
name='CrossLibraryTable1_data', ------------ 養(yǎng)成好習(xí)慣,數(shù)據(jù)文件加_data
filename='F:\代碼存放\數(shù)據(jù)庫\CrossLibraryTable1_data.mdf', ------------ 一定要是.mdf的文件,代表主數(shù)據(jù)文件
size=5mb, --默認(rèn)數(shù)據(jù)庫大小
maxsize=100mb, --最大容量
filegrowth=1mb --增長量
)
log on
(
name='CrossLibraryTable1_log', ------------ 養(yǎng)成好習(xí)慣,日志文件加_log
filename='F:\代碼存放\數(shù)據(jù)庫\CrossLibraryTable1_log.ldf', ------------ 一定要是.ldf的文件,代表日志文件
size=1mb, --默認(rèn)數(shù)據(jù)庫大小
filegrowth=10% --增長量
)

--創(chuàng)建CrossLibraryTable2腳本:

use master --打開master數(shù)據(jù)庫,一般的創(chuàng)建語句都在master中執(zhí)行.
go
if exists (select * from sysdatabases where name='CrossLibraryTable2')
 drop database CrossLibraryTable2 /*檢查有沒有這個數(shù)據(jù)庫,如果有就刪除它。*/
go
create database CrossLibraryTable2
on primary
(
name='CrossLibraryTable2_data', ------------ 養(yǎng)成好習(xí)慣,數(shù)據(jù)文件加_data
filename='F:\代碼存放\數(shù)據(jù)庫\CrossLibraryTable2_data.mdf', ------------ 一定要是.mdf的文件,代表主數(shù)據(jù)文件
size=5mb, --默認(rèn)數(shù)據(jù)庫大小
maxsize=100mb, --最大容量
filegrowth=1mb --增長量
)
log on
(
name='CrossLibraryTable2_log', ------------ 養(yǎng)成好習(xí)慣,日志文件加_log
filename='F:\代碼存放\數(shù)據(jù)庫\CrossLibraryTable2_log.ldf', ------------ 一定要是.ldf的文件,代表日志文件
size=1mb, --默認(rèn)數(shù)據(jù)庫大小
filegrowth=10% --增長量
)

然后,執(zhí)行完腳本后,刷新一下就可以看到剛剛創(chuàng)建的數(shù)據(jù)庫了:

2.接下來在兩個數(shù)據(jù)庫里面分別創(chuàng)建一個CrossTest1和一個CrossTest2表用于跨庫查詢

--創(chuàng)建CrossTest1腳本:

 use CrossLibraryTable1
 create table CrossTest1(
 Id int primary key identity,
 Name nvarchar(20)
 )

--創(chuàng)建CrossTest2腳本:

 use CrossLibraryTable2
 create table CrossTest2(
 Id int primary key identity,
 Name nvarchar(20)
 )

表創(chuàng)建好后,我們再添加幾條數(shù)據(jù)進(jìn)去:

use CrossLibraryTable1 
 insert into CrossTest1 values('跨庫1測試數(shù)據(jù)1') 
 insert into CrossTest1 values('跨庫1測試數(shù)據(jù)2')

 use CrossLibraryTable2 
 insert into CrossTest2 values('跨庫2測試數(shù)據(jù)1') 
 insert into CrossTest2 values('跨庫2測試數(shù)據(jù)2')

切換到CrossLibraryTable1下面查詢CrossLibraryTable2的數(shù)據(jù)可以看到報如下錯誤

修正代碼:

PS:像上面那樣是可以進(jìn)行查詢,然而在項目中使用上面的代碼格式就會引發(fā)一些問題,那什么問題呢?比如另一個數(shù)據(jù)庫的名稱改變了,我們就需要把所有用到這個的地方都得改掉,這樣就很麻煩,那么有什么解決方案么,使得改一處就好了?當(dāng)然有,用數(shù)據(jù)庫同義詞就可以輕松搞定!

創(chuàng)建同義詞步驟如下:

不同服務(wù)器跨庫訪問實現(xiàn)

當(dāng)數(shù)據(jù)庫在不同服務(wù)器上面,用上面的方法就不行了,那如何實現(xiàn)跨服務(wù)器訪問呢?很簡單,看下面↓↓↓

好了,SQL Server跨庫跨服務(wù)器訪問實現(xiàn)就到這了,如果按照步驟一步一步操作的話,相信您也已經(jīng)實現(xiàn)了,下一篇文章就來談?wù)劮謳旆直韺崿F(xiàn)。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • SQLServer 跨庫查詢實現(xiàn)方法
  • SQL Server 跨庫同步數(shù)據(jù)
  • MSSQLSERVER跨服務(wù)器連接(遠(yuǎn)程登錄)的示例代碼

標(biāo)簽:來賓 天水 益陽 宿州 防疫戰(zhàn)設(shè) 威海 銅仁 七臺河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL Server實現(xiàn)跨庫跨服務(wù)器訪問的方法》,本文關(guān)鍵詞  SQL,Server,實現(xiàn),跨庫,跨,服務(wù)器,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL Server實現(xiàn)跨庫跨服務(wù)器訪問的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL Server實現(xiàn)跨庫跨服務(wù)器訪問的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章