光盘\TM\lx\4\SQL Server的命名规则.exe
SQL Server 的命名规则
SQL Server为了完善数据库的管理机制,设计了严格的命名规则。用户在创建数据库及数据库对
象时必须严格遵守SQL Server的命名规则。本节将对
标识符
、
对象
和
实例
的命名进行详细的介绍。
标识符
在SQL Server中,服务器、数据库和数据库对象(如表、视图、列、索引、触发器、过程、约束
和规则等)都有标识符,数据库对象的名称被看成是该对象的标识符。大多数对象要求带有标识符,
但有些对象(如约束)中标识符是可选项。
对象标识符是在定义对象时创建的,标识符随后用于引用该对象,下面分别对标识符的格式及分
类进行介绍。
标识符格式
在定义标识符时必须遵守以下规定。
(l)标识符的首字符必须是下列字符之一。
1.统一码(Unicode) 2.0标准中所定义的字母,包括拉丁字母a--z和A~Z,以及来自其他语
言的字符。
2.下划线“_”、符号“@”或者数字符号“#”。
在SQL Server中,某些处于标识符开始位置的符号具有特殊意义。以“@”符号开始的标识符表
示局部变量或参数;以一个数字符号“#”开始的标识符表示临时表或过程,如表“#gzb”就是一张临
时表;以双数字符号“##”开始的标识符表示全局临时对象,如表“##gzb”则是全局临时表。
注意某些Transact-SQL函数的名称以“
@@
”符号开始,为避免混淆这些函数,建议不要使
用以“@@”开始的名称。
(2)标识符的后续字符可以是以下3种。
1.统一码(Unicode) 2.0标准中所定义的字母。
2.来自拉丁字母或其他国家/地区脚本的十进制数字。
3.“@”符号、美元符号“$”、数字符号“#”或下划线“_”。
(3)标识符不允许是Transact-SQL的保留字。
(4)不允许嵌入空格或其他特殊字符。
标识符分类
SQL Server将标识符分为以下两种类型。
常规标识符:符合标识符的格式规则。
分隔标识符:包含在双引号(“”)或者方括号([])内的标识符。
该标识符可以不符合标识
符的格式规则,如[MR GZGLXT]中MR和GZGLXT之间含有空格,‘但因为使用了方括号,
所以视为分隔标识符。
注意:常规标识符和分隔标识符包含的字符数必须在1~128之间,对于本地临时表,标识符最
多可以有116个字符。
对象命名规则
SQL Server 2008的数据库对象的名字由1- 128个字符组成,不区分大小写。使用标识符也可以作
为对象的名称。
在一个数据库中创建了一个数据库对象后,数据库对象的完整名称应该由
服务器名
、
数据库名
、
拥有者名
和
对象名
4部分组成,其格式如下:
服务器、数据库和所有者的名称即所谓的对象名称限定符。当引用一个对象时,不需要指定服务
器、数据库和所有者,可以利用句号标出它们的位置,从而省略限定符。
对象名的有效格式如下:
注意:不允许存在4部分名称完全相同的数据库对象。在同一个数据库中可以存在两个名为 EXAMPLE的表格,但前提必须是这两个表的拥有者不同。
实例命名规则
使用Microsoft SQL Server 2000,可以选择在一台计算机上安装SQL Server的多个实例。SQL Server
2008提供了两种类型的实例,即默认实例和命名实例。
(1)默认实例
此实例由运行它的计算机的网络名称标识。使用以前版本SQL Server客户端软件的应用程序可以
连接到默认实例。SQL Server 6.5版或SQL Server 7.0版服务器可作为默认实例操作。但是,一台计算
机上每次只能有一个版本作为默认实例运行。
(2)命名实例
计算机可以同时运行任意个SQL Server命名实例。实例通过计算机的网络名称加上实例名称以
<计算机名称>\<实例名称>格式进行标识,即computer_name\instance_name,但该实例名不能超过16
个字符。