簡體   English   中英

SQL Server中的最大數據庫名稱長度

[英]Max database name length in SQL Server

我正在嘗試對數據庫名稱進行一些UI驗證。 從不同的地方我被告知SQL Server數據庫名稱在SQL Server中存儲為sysname 我還通過檢查sys.Databases來驗證。

所以,我讓UI中的文本框長度為128個字符。 這是sysname類型的最大長度。

但是,我發現在我的SQL Server 2005 Express版本中,如果我輸入一個長度為128個字符的數據庫名稱,它總會抱怨

無法創建默認日志文件,因為名稱太長

為了確保我能夠成功創建數據庫,我發現我需要將最大限制設置為124個字符。

我現在的問題是,對於所有不同Windows操作系統上的所有SQL Server版本,是否有124個字符限制?

日志文件名不需要包含數據庫名稱。

這對我來說很好。例如。

CREATE DATABASE [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA] ON  PRIMARY 
( 
NAME = N'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', 
FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\A128.mdf')
 LOG ON 
( 
NAME = N'A128_log', 
FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\A128_log.LDF')

您是否遇到過數據和日志文件的文件名問題? 底層操作系統(Windows)對其進行限制,因此無法創建數據庫。 數據庫名稱可能長度為128個字符,並且假設使用的文件名不長(使用SQL Server Management Studio時,它會根據數據庫名稱自動生成文件名,因此它們最終會很長)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM