SQL?Server中T-SQL標(biāo)識符介紹與無排序生成序號的方法
T-SQL 標(biāo)識符
在T-SQL語言中,對SQLServer數(shù)據(jù)庫及其數(shù)據(jù)對象(比如表、索引、視圖、存儲過程、觸發(fā)器等)需要以名稱來進行命名并加以區(qū)分,這些名稱就稱為標(biāo)識符。
通常情況下,SQLServer數(shù)據(jù)庫、數(shù)據(jù)庫以及各種數(shù)據(jù)對象都應(yīng)該有一個標(biāo)識符,但對于某些對象來說,比如約束,標(biāo)識符是可選的。推薦每個對象都使用標(biāo)識符。
1、常規(guī)標(biāo)識符的規(guī)則
(1)、首字符:標(biāo)識符的第一個字符必須滿足下列條件:
Unicode標(biāo)準(zhǔn)3.2定義的字母,通常就是字母a~z和A~Z。
下劃線(_)、at字符(@)、或數(shù)字符號(#)。
(2)、后續(xù)字符:
Unicode標(biāo)準(zhǔn)3.2中所定義的字母。
基本拉丁字符或其他國家/地區(qū)字符中的十進制數(shù)字。
at符號(@)、美元符號($)、數(shù)字符號或下劃線。
(3)、不能是保留字:
常規(guī)標(biāo)識符不能使用SQL Server內(nèi)部的保留字,比如char。
(4)、不允許嵌入空格:
2、帶分隔符的標(biāo)識符
當(dāng)一定要使用保留字時,如table,這樣的標(biāo)識符是SQLServer內(nèi)部的保留字,如果非得這樣使用,就必須用這樣的方式:"table"。
(1)、分隔符
T-SQL規(guī)定下列符號為特定的分隔符。
1、雙引號("):用于表示引用的標(biāo)識符。
2、中括號([]):用于表示括號中的標(biāo)識符。
(2)、什么時機使用分隔符
T-SQL常在下列情況下使用分隔符。
1、對象名稱或?qū)ο竺Q的組成部分中包含保留字時。
2、使用其他特殊的字符時。
無排序生成序號
實現(xiàn)方式:ROW_NUMBER()
SELECT RowID=(ROW_NUMBER() OVER(ORDER BY(SELECT 0))) FROM dbo.tbl_name
實現(xiàn)方式:IDENTITY
SELECT RowID=IDENTITY(INT,1,1) INTO #tb1 FROM dbo.tbl_name SELECT * FROM #tb1
到此這篇關(guān)于SQL Server中T-SQL標(biāo)識符與無排序生成序號的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SQL Server數(shù)據(jù)庫設(shè)置自動備份策略的完整步驟
這篇文章主要給大家介紹了關(guān)于SQL Server數(shù)據(jù)庫設(shè)置自動備份策略的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用sql server具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-09-09Sql Server里刪除數(shù)據(jù)表中重復(fù)記錄的例子
這篇文章主要介紹了Sql Server里刪除數(shù)據(jù)表中重復(fù)記錄的例子,本文給出了3種操作方法,需要的朋友可以參考下2014-08-08SqlServer數(shù)據(jù)庫提示 “tempdb” 的日志已滿 問題解決方案
本文主要講述了筆者在執(zhí)行sql語句的過程中,遇到提示“數(shù)據(jù)庫 'tempdb' 的日志已滿。請備份該數(shù)據(jù)庫的事務(wù)日志以釋放一些日志空間?!钡慕鉀Q過程,希望對大家有所幫助2014-08-08基于Python的SQL Server數(shù)據(jù)庫實現(xiàn)對象同步輕量級
這篇文章主要介紹了基于Python的SQL Server數(shù)據(jù)庫對象同步輕量級實現(xiàn)方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-06-06SqlServer參數(shù)化查詢之where in和like實現(xiàn)詳解
若有一天你不可避免的需要提高SQL的查詢性能,需要一次性where in 幾百、上千、甚至上萬條數(shù)據(jù)時,參數(shù)化查詢將是必然進行的選擇2012-05-05