[英]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.