2014-12-04 89 views
1

在MS SQL Sever中,可能有區分大小寫的數據庫名稱。換句話說,有沒有辦法在同一個實例'create database db1'和'create database DB1'上創建2個數據庫?SQL Server區分大小寫的數據庫名稱

如果是,該如何啓用? (我自己嘗試過,並且它不允許我創建第二次,但我不確定是否錯過了任何設置)

注意:我已經看到關於此的所有問題,但它們似乎涉及到數據庫中的對象,我指的是數據庫名稱本身。

(其原因,問題是不設置數據庫這種方式,但要知道,如果這樣的情況可能發生這樣我可以包括在我的測試)

+1

看看這個http://www.mssqltips.com/sqlservertip/2913/sql-server-case-sensitive-collat​​ions-and-dmvs/ – 2014-12-04 06:08:00

+0

不知道100%,所以不能給它作爲答案,但我懷疑你可以做到這一點。我沒有看到它的提及,再加上它會導致sql server中很多東西出現問題(物理數據庫文件,系統數據庫中的排序規則等),這些都需要非常仔細地處理。在測試情況下,我不會擔心這種情況 – 2014-12-04 08:01:49

+0

@ AllanS.Hansen - 不確定你在重新獲得什麼:物理數據庫文件。按*約定*文件的名稱與數據庫的名稱類似,但這僅僅是一種約定。 – 2014-12-04 09:02:48

回答

0

可能能夠通過做到這一點將安裝時的服務器排序規則設置爲區分大小寫,或使用區分大小寫的排序規則將其更改爲recreating the master database。由於master數據庫是用戶級元數據的數據庫,因此如果有任何事情會強制區分大小寫的服務器對象名稱,master數據庫就會這樣做。

然而,我不知道它有多剛硬。我有一臺服務器排序規則設置爲Latin1_General_CS_AS的2k8R2服務器,我必須在use語句或從鏈接服務器調用時正確拼寫數據庫名稱。但是,連接到該服務器的數據庫都不區分大小寫。如果您的當前數據庫不區分大小寫,您可以使用不區分大小寫的名稱。我不知道。

我也從來沒有嘗試在該服務器上創建一個與現有數據庫同名的數據庫,除了不同情況。我不知道它是否會允許。

相關問題