SQL Server学习指南:标识符与转义规则详解

需积分: 9 11 下载量 79 浏览量 更新于2024-08-02 收藏 918KB DOC 举报
SQL Server 学习文档是针对初学者的一份实用教程,它涵盖了SQL Server的关键概念和最佳实践。文档的核心内容集中在SQL Server中处理非标准标识符和字符串引用的方法,以及QUOTED_IDENTIFIER选项的作用。 在SQL Server中,未被列为合法标识符的字符可以引起识别问题。为了解决这一问题,SQL Server允许使用分隔符进行标识符的区分。但是,这些分隔符(如逗号、分号等)不能用于关键字,即使它们在SQL Server中不是保留词。为了明确标识这些特殊标识符,SQL Server提供了两种引用方式:一是双引号("),用于在QUOTED_IDENTIFIER设置为ON时引用;二是使用方括号([]),即使在默认情况下也可使用。 QUOTED_IDENTIFIER选项的开关至关重要,因为它决定了SQL Server如何处理字符串中的引号。当该选项开启时(默认值通常为ON),SQL Server遵循SQL-92规则,单引号用于字符串内容,且嵌套单引号需要用两个单引号表示。例如,查询可能看起来像这样:`SELECT * FROM "MyTable" WHERE "LastName" = 'O''Brien'`。而在QUOTED_IDENTIFIER为OFF时,双引号不再用于标识符分隔,而是用方括号,且单引号可以直接用于字符串,如`SELECT * FROM [MyTable] WHERE [LastName] = "O'Brien"`。 文档还提到了数据库兼容级别的概念,这涉及到将数据库的行为设置为特定SQL Server版本的兼容性模式,比如SQL Server 6.0、6.5、7.0、2000和2005。这些级别影响了数据库的语法和功能集,开发者需要根据目标环境选择合适的兼容性级别。例如,创建数据库的Transact-SQL语句语法如下: ```sql CREATE DATABASE database_name [ON PRIMARY <filespec>[,...n][,<filegroupspec>,...n]] [LOGON <filespec>,...n] [FOR RESTORE] <filespec> ::= ([NAME=logical_file_name,] FILENAME='os_file_name' [,...n] [SIZE=size] [MAXSIZE={max_size|UNLIMITED}] [FILEGROWTH=growth_increment]) ``` 这部分内容讲解了如何通过`CREATE DATABASE`命令来初始化数据库,包括指定主数据文件、日志文件以及相关的大小和增长策略。这对于理解如何配置和管理SQL Server数据库是必不可少的知识点。