5. 為 ad hoc 負載最佳化 sp_configure 'show advanced options', 1; GO RECONFIGURE; GO
6. SQL Server 2008: Wordbreakers Portuguese Punjabi Romanian Russian Serbian Serbian Latin Slovak Slovenian Spanish Swedish Tamil Telugu Thai Turkish Ukrainian Urdu Vietnamese German Gujarati Hebrew Hindi Icelandic Indonesian Italian Japanese Korean Latvian Lithuanian Malay Malayalam Marathi Neutral Norwegian Polish Arabic Bengali Brazilian Bulgarian Canadian Catalan Chinese (Simplified) Chinese (Traditional) Chinese (Hong Kong) Chinese (Macau) Chinese (Singapore) Croatian Cyrillic Danish Dutch English English UK French Present but disabled New for 2008 In 2005 but replaced in 2008 Unchanged from 2005
12. Pass the Data as XML // C# cmd.CommandType = CommandType.StoredProcedure;cmd.CommandText = "Test.spXML";cmd.Parameters.AddWithValue("@Values", doc.OuterXml);cmd.Execute…; -- What happens on the server?: EXEC Test.spXML @Values = N'<Orders><Order…
13. Pass the Data as a Table Valued Parameter // C# cmd.CommandType = CommandType.StoredProcedure;cmd.CommandText = "Test.spTVP";var p = cmd.Parameters.Add("@Values", SqlDbType.Structured);p.TypeName = "Test.OrderTableType";p.Value = dataTable; cmd.Execute…; -- What happens on the server?: DECLARE @Values Test.OrderTableType; INSERT @Values … EXEC Test.spTVP @Values = @Values;
15. 以 Table Valued Parameter 傳遞資料 // C# cmd.CommandType = CommandType.StoredProcedure;cmd.CommandText = "Test.spTVP";var p = cmd.Parameters.Add("@Values", SqlDbType.Structured);p.TypeName = "Test.OrderTableType";p.Value = dataTable; cmd.Execute…; -- What happens on the server?: DECLARE @Values Test.OrderTableType; INSERT @Values … EXEC Test.spTVP @Values = @Values;
16. 使用 MERGE 命令執行多個作業 Events MATCHED NOT MATCHED NOT MATCHED BY SOURCE Type of event $action
17. 使用 MERGE 命令執行多個作業 MERGE Test.Orders AS o USING @Values AS v ON v.OrderId = o.OrderId WHEN MATCHED THEN UPDATE SET CustomerId = v.CustomerId ,OrderDate = v.OrderDate ,DueDate = v.DueDate WHEN NOT MATCHED BY SOURCE THEN DELETE WHEN NOT MATCHED THEN INSERT (OrderId, CustomerId, OrderDate) VALUES(v.OrderId, v.CustomerId, v.OrderDate);
18. 超越關聯式資料的特色概觀 SQL Server 2008 SQL Server 2005 遠端 BLOB Store API Filestream 整合式的全文檢索 全文檢索 文檔 & 多媒體 完整支援 Geometry 和 Geography 資料類型與功能 XML資料類型與功能 強化 XML Relational BR Support 大型 UDTs Sparse Columns Wide Tables/Column Set Filtered Indices HierarchyID 空間資料 XML User Defined Types
27. 對多個 NULL 的資料欄為持唯一 建立唯一過濾索引(unique filtered index),以剃除 NULLs CREATE UNIQUE NONCLUSTERED INDEX idx_col1_notnull ON dbo.T1(col1) WHERE col1 IS NOT NULL; 20
30. Change Data Capture (CDC) SQL Agent jobs 週期性地掃描交易記錄,關注有啟動 CDC 的資料表之變動 變動資料放置在變更資料表,交易記錄同時提供了時間進程 透過 TVF 並指定交易的 LSN 或時間區段,可以取得變更資料 可以取得變更的經過細節,或是淨變化
31. 參考資料 Introduction to New T-SQL Programmability Features in SQL Server 2008(http://msdn.microsoft.com/en-us/library/cc721270.aspx) Apress Beginning Spatial with SQL Server 2008 Alastair Aitchison
Notas del editor
Self-explanatory.Stress that this can make the statistics more detailed and useful, especially for skewed data sets. Everything about maintaining filtered stats work the same way as for regular stats.
Stress that its asynchronous and works through a log reader.