SQL Server:命名规则


    用户在创建数据库及数据库对象时必须严格遵守SQL Server的命名规则。

 

一、标识符

 

    在SQL Server中,服务器、数据库和数据库对象(如表、视图、列、索引、触发器、过程、约束和规则等)都有标识符,数据库对象的名称被看成是该对象的标识符。大多数对象要求带有标识符,但有些对象(如约束)中标识符是可选项。

对象标识符是在定义对象时创建的,标识符随后用于引用该对象。

 

1、标识符格式

    在定义标识符时必须遵守以下规定:

(1)标识符的首字符必须是下列字符之一:

Ю统一码(Unicode) 2.0标准中所定义的字母,包括拉丁字母a~z和A~Z以及来自其他语言的字符;

Ю下划线”_”、符号“@”或者数字符号“#”。

    在SQL Server中,某些处于标识符开始位置的符号具有特殊意义。以“@”符号开始的标识符表示局部变量或参数;以一个数字符号“#”开始的标识符表示临时表或过程,如表“#gzb”就是一张临时表;以双数字符号“##”开始的标识符表示全局临时对象,如表“##gzb”则是全局临时表。

[注]:某些Transact-SQL函数名称以“@@”符号开始。

(2)标识符的后续字符可以说以下3种:

Ю统一码(Unicode) 2.0标准中所定义的字母。

Ю来自拉丁字母或其他国家/地区脚本的十进制数字。

Ю“@”符号、美元符号“$”、数字符号“#”或下划线“_”。

(3)标识符不允许是Transact-SQL的保留字。

(4)不允许嵌入空格或其他特殊字符。

 

2、标识符分类

    SQL Server将标识符分为以下两种类型:

Ю常规标识符:符合标识符的格式规则;

Ю分隔标识符:包含在双引号(“”)或者方括号([])内的标识符。该标识符可以不符合标识符的格式规则,如[MR GZGLXT]中MR和GZGLXT之间含有空格,但因为使用了方括号,所以视为分隔标识符。

    常规标识符和分隔标识符包含的字符必须在1~128之间,对于本地临时表,标识符最多可以有116个字符。

 

二、对象命名规则

 

    SQL Server 2008的数据库对象的名字由1~128个字符组成,不区分大小写。使用标识符也可以作为对象的名称。

在一个数据库中创建了一个数据库对象后,据库对象的完整名称应该由服务器名、数据库名、拥有者名和对象名四部分组成,其格式如下:

[ [ [server.][database]. ][ owner_name ]. ]object_name

服务器、数据库和所有者的名称即所谓的对象名称限定符。当引用一个对象时,不需要指定服务器、数据库和所有者,可以利用句号标出它们的位置,从而省略限定符。

对象名的有效格式如下:

server.database.owner_name.object_name(指定了所有四个部分的对象名称被称为完全合法名称)

server.database..object_name

server...object_name

server.database.owner_name.object_name

owner_name.object_name

[注]:不允许存在四部分名称完全相同的数据库对象。在同一个数据库中可以存在两个名为EXAMPLE的表格,但前提必须是这两个表的拥有者不同。

 

三、实例命名规则

    

    使用Microsoft SQL Server 2000可以选择在一台计算机上安装SQL Server的多个实例。SQL Server 2008提供了两种类型的实例,即默认实例和命名实例。

 

1、默认实例

    此实例由运行它的计算机的网络名称标识。使用以前版本SQL Server客户端软件的应用程序可以连接到默认实例。SQL Server 6.5版或SQL Server 7.0版服务器可以作为默认实例操作。但是,一台计算机上每次只能有一个版本作为默认实例运行。

 

2、命名实例

    计算机可以同时运行任意个SQL Server命名实例。实例通过计算机的网络名称加上实例名称以<计算机名称>\<实例名称>格式进行标识,但该实例名不能超过16个字符。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值