SQL Server 的保留关键字一览
发表于:2007-07-02来源:作者:点击数:
标签:
SQL Server 保留关键字 Microsoft SQL Server 2000 使用保留关键字定义、操作和访问 数据库 。保留关键字是 SQL Server 使用的 Transact-SQL 语言语法的一部分,用于分析和理解 Transact-SQL 语句和批处理。尽管在 Transact-SQL 脚本中,使用 SQL Server 保留
SQL Server 保留关键字
Microsoft® SQL Server™ 2000 使用保留关键字定义、操作和访问
数据库。保留关键字是 SQL Server 使用的 Transact-SQL 语言语法的一部分,用于分析和理解 Transact-SQL 语句和批处理。尽管在 Transact-SQL 脚本中,使用 SQL Server 保留关键字作为标识符和对象名在语法上是可行的,但规定只能使用分隔标识符。
下表列出了 SQL Server 的保留关键字。
ADDEXCEPTPERCENTALLEXECPLANALTEREXECUTEPRECISIONANDEXISTSPRIMARYANYEXITPRINTASFETCHPROCASCFILEPROCEDUREAUTHORIZATIONFILLFACTORPUBLICBACKUPFORRAISERRORBEGINFOREIGNREADBETWEENFREETEXTREADTEXTBREAKFREETEXTTABLERECONFIGUREBROWSEFROMREFERENCESBULKFUL
LREPLICATIONBYFUNCTIONRESTORECASCADEGOTORESTRICTCASEGR
ANTRETURNCHECKGROUPREVOKECHECKPOINTHAVINGRIGHTCLOSEHOLDLOCKROLLBACKCLUSTEREDIDENTITYROWCOUNTCOALESCEIDENTITY_INSERTROWGUIDCOLCOLLATEIDENTITYCOLRULECOLUMNIFSAVECOM
MITINSCHEMACOMPUTEINDEXSELECTCONSTRAINTINNERSESSION_USERCONTAINSINSERTSETCONTAINSTABLEINTERSECTSETUSERCONTINUEINTOSHU
TDOWNCONVERTISSOMECREATEJOINSTATISTICSCROSSKEYSYSTEM_USERCURRENTKILLTABLECURRENT_DATELEFTTEXTSIZECURRENT_TIMELIKETHENCURRENT_TIMESTAMPLINENOTOCURRENT_USERLOADTOPCURSORNATIONALTRANDATABASENOCHECKTRANSACTIONDB
CCNONCLUSTEREDTRIGGERDEALLOCATENOTTRUNCATEDECLARENULLTSEQUALDEFAULTNULLIFUNIONDELETEOFUNIQUEDENYOFFUPDATEDESCOFFSETSUPDATETEXTDISKONUSEDISTINCTOPENUSERDISTRIBUTEDOPENDATASOURCEVALUESDOUBLEOPENQUERYVARYINGDROPOPENROWSETVIEWDUMMYOPENXMLWAITFORDUMPOPTIONWHENELSEORWHEREENDORDERWHILEERRLVLOUTERWITHESCAPEOVERWRITETEXT
另外,SQL-92 标准还定义了保留关键字列表。不要使用 SQL-92 保留关键字作为对象名和标识符。ODBC 保留关键字列表(如下所示)与 SQL-92 保留关键字列表相同。
说明 SQL-92 保留关键字列表有时可能比 SQL Server 限制更多,有时则限制更少。例如,SQL-92 保留关键字列表包含 INT,而 SQL Server 不需要将其区分为保留关键字。
Transact-SQL 保留关键字可用作数据库或数据库对象(如表、列、视图等)的标识符或名称。使用被引用的标识符或分隔标识符。对将保留关键字用作变量和存储过程参数的名称没有限制。
ODBC 保留关键字
保留了下列关键字用于 ODBC 函数调用。这些关键字根本不约束 SQL 语法;然而,为确保与支持核心 SQL 语法的驱动程序兼容,应用程序应避免使用这些关键字。
下面是当前的 ODBC 保留关键字列表。有关更多信息,请参见《Microsoft ODBC 3.0
程序员参考》,第 2 卷,附录 C。
ABSOLUTEEXECOVERLAPSACTIONEXECUTEPADADAEXISTSPARTIALADDEXTERNALPASCALALLEXTRACTPOSITIONALLOCATEFALSEPRECISIONALTERFETCHPREPAREANDFIRSTPRESERVEANYFLOATPRIMARYAREFORPRIORASFOREIGNPRIVILEGESASCFORTRANPROCEDUREASSERTIONFOUNDPUBLICATFROMREADAUTHORIZATIONFULLREALAVGGETREFERENCESBEGINGLOBALRELATIVEBETWEENGORESTRICTBITGOTOREVOKEBIT_LENGTHGRANTRIGHTBOTHGROUPROLLBACKBYHAVINGROWSCASCADEHOURSCHEMACASCADEDIDENTITYSCROLLCASEIMMEDIATESECONDCASTINSECTIONCATALOGINCLUDESELECTCHARINDEXSESSIONCHAR_LENGTHINDICATORSESSION_USERCHARACTERINITIALLYSETCHARACTER_LENGTHINNERSIZECHECKINPUTSMALLINTCLOSEINSENSITIVESOMECOALESCEINSERTSPACECOLLATEINTSQLCOLLATIONINTEGERSQLCACOLUMNINTERSECTSQLCODECOMMITINTERVALSQLERRORCONNECTINTOSQLSTATECONNECTIONISSQLWARNINGCONSTRAINTISOLATIONSUBSTRINGCONSTRAINTSJOINSUMCONTINUEKEYSYSTEM_USERCONVERTLANGUAGETABLECORRESPONDINGLASTTEMPORARYCOUNTLEADINGTHENCREATELEFTTIMECROSSLEVELTIMESTAMPCURRENTLIKETIMEZONE_HOURCURRENT_DATELOCALTIMEZONE_MINUTECURRENT_TIMELOWERTOCURRENT_TIMESTAMPMATCHTRAILINGCURRENT_USERMAXTRANSACTIONCURSORMINTRANSLATEDATEMINUTETRANSLATIONDAYMODULETRIMDEALLOCATEMONTHTRUEDECNAMESUNIONDECIMALNATIONALUNIQUEDECLARENATURALUNKNOWNDEFAULTNCHA
RUPDATEDEFERRABLENEXTUPPERDEFERREDNOUSAGEDELETENONEUSERDESCNOTUSINGDESCRIBENULLVALUEDESCRIPTORNULLIFVALUESDIAGNOSTICSNUMERICVARCHARDISCONNECTOCTET_LENGTHVARYINGDISTINCTOFVIEWDOMAINONWHENDOUBLEONLYWHENEVERDROPOPENWHEREELSEOPTIONWITHENDORWORKEND-EXECORDERWRITEESCAPEOUTERYEAREXCEPTOUTPUTZONEEXCEPTION
将来的关键字
以下关键字可能会保留在将来的 SQL Server 版本中,作为将来要实现的新特性。注意,不要使用这些关键字作为标识符。
ABSOLUTEFOUNDPRESERVEACTIONFREEPRIORADMINGENERALPRIVILEGESAFTERGETREADSAGGREGATEGLOBALREALALIASGORECURSIVEALLOCATEGROUPINGREFAREHOSTREFERENCINGARRAYHOURRELATIVEASSERTIONIGNORERESULTATIMMEDIATERETURNSBEFOREINDICATORROLEBINARYINITIALIZEROLLUPBITINITIALLYROUTINEBLOBINOUTROWBOOLEANINPUTROWSBOTHINTSAVEPOINTBREADTHINTEGERSCROLLCALLINTERVALSCOPECASCADEDISOLATIONSEARCHCASTITERATESECONDCATALOGLANGUAGESECTIONCHARLARGESEQUENCECHARACTERLASTSESSIONCLASSLATERALSETSCLOBLEADINGSIZECOLLATIONLESSSMALLINTCOMPLETIONLEVELSPACECONNECTLIMITSPECIFICCONNECTIONLOCALSPECIFICTYPECONSTRAINTSLOCALTIMESQLCONSTRUCTORLOCALTIMESTAMPSQLEXCEPTIONCORRESPONDINGLOCATORSQLSTATECUBEMAPSQLWARNINGCURRENT_PATHMATCHSTARTCURRENT_ROLEMINUTESTATECYCLEMODIFIESSTATEMENTDATAMODIFYSTATICDATEMODULESTRUCTUREDAYMONTHTEMPORARYDECNAMESTERMINATEDECIMALNATURALTHANDEFERRABLENCHARTIMEDEFERREDNCLOBTIMESTAMPDEPTHNEWTIMEZONE_HOURDEREFNEXTTIMEZONE_MINUTEDESCRIBENOTRAILINGDESCRIPTORNONETRANSLATIONDESTROYNUMERICTREATDESTRUCTOROBJECTTRUEDETERMINISTICOLDUNDERDICTIONARYONLYUNKNOWNDIAGNOSTICSOPERATIONUNNESTDISCONNECTORDINALITYUSAGEDOMAINOUTUSINGDYNAMICOUTPUTVALUEEACHPADVARCHAREND-EXECPARAMETERVARIABLEEQUALSPARAMETERSWHENEVEREVERYPARTIALWITHOUTEXCEPTIONPATHWORKEXTERNALPOSTFIXWRITEFLASEPREFIXYEARFIRSTPREORDERZONEFLOATPREPARE
原文转自:http://www.ltesting.net