Rex IT Blog
2016年3月22日 星期二
sys.sysmessages
select msglangid,* from sys.sysmessages where error = '207'
不同語系的錯誤訊息
sys.syslanguages
select msglangid,* from sys.syslanguages
msglangid為1028是繁體中文
Table Scan和Index Scan
Table Scan沒有順序
Index Scan有順序
one clustered index per table
一個資料表只能有一個叢集索引
備註:
一個資料表可以有多個非叢集索引(nonclustered indexes)
In SQL Server, indexes are organized as B-trees.
Nonclustered indexes have the same B-tree structure as clustered indexes,
https://technet.microsoft.com/en-us/library/ms177443(v=sql.105).aspx
ref:
Clustered Index Structures
Nonclustered Index Structures
2016年3月20日 星期日
DBCC CHECKIDENT(testRESEED, RESEED, 1)
DBCC CHECKIDENT(testRESEED, RESEED, 1)
testRESEED為Table名稱
將testRESEED這資料表的索引值,改為從1開始計算
以下insert紅框處,id變成2
2016年3月6日 星期日
SET IDENTITY_INSERT ON
先關閉自動取號
所以insert語法需要加id
一次只能ON一個TABLE
結束後使用SET IDENTITY_INSERT OFF
錯誤訊息:
當 IDENTITY_INSERT 設為 OFF 時,無法將外顯值插入資料表 'Products' 的識別欄位中
(Cannot insert explicit value for identity column in table 'Products' when IDENTITY_INSERT is set to OFF.)
REF:
https://msdn.microsoft.com/en-us/library/ms188059.aspx
http://blog.xuite.net/linriva/blog/35114164-%5BSQL+Server%5D+SET+IDENTITY_INSERT%3ARe-Insert
測試語法:
CTE和子查詢的效能
CTE(Common Table Expressions)和子查詢(subquery)的效能是一樣的
只是CTE語法比較有結構性,會比較好維護
P.S.從SQL Server 2005之後新增CTE語法
REF:
Recursive Queries Using Common Table Expressions
https://msdn.microsoft.com/en-us/library/ms186243(v=SQL.110).aspx
T-SQL -- COMMON TABLE EXPRESSION (CTE) 教學重點筆記
http://blog.kkbruce.net/2011/01/t-sql-common-table-expression-cte.html#.VtxCA7Z96Uk
較新的文章
較舊的文章
首頁
訂閱:
文章 (Atom)