自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server 2008的新版的CTP的獨(dú)特之處

數(shù)據(jù)庫 SQL Server
我們今天主要向大家講述的是SQL Server 2008的新版的CTP的獨(dú)特之處。以下就是文章的主要內(nèi)容的詳細(xì)介紹,望大家會對其有更好的了解。

本文主要向你介紹的是SQL Server 2008的新版的CTP的獨(dú)特之處,在安裝Microsoft SQL Server 2008 July CTP之時,在你的機(jī)子上就不能裝有SQL Server 2000。與SQL Server 2005的安裝過程相比,Microsoft SQL Server 2008 July CTP的安裝過程會非常的正常。

屏幕看上去會顯的非常簡單。如果要安裝覆蓋一個先前的CTP版本,比必須先要卸載先前的版本。The July CTP不會升級一個先前的版本。

 

在SQL Server 2008中的新的數(shù)據(jù)類型

 

這個版本的Microsoft SQL Server 2008包括了一些我們可以開發(fā)的新的數(shù)據(jù)類型。這些數(shù)據(jù)類型包括DATE和TIME數(shù)據(jù)類型。Microsoft同時也包括了HierarchyID系統(tǒng)數(shù)據(jù)類型。

 

在T-SQL 中DATE和TIME數(shù)據(jù)類型允許按照你的需要僅僅只存儲部分datetime數(shù)據(jù)類型。在Microsoft SQL Server的先前的版本中,存儲和獲取僅僅是日期和時間需要你同時存儲日期和時間值,通過使用一個轉(zhuǎn)化函數(shù)來去除你不需要的部分。DATE系統(tǒng)數(shù)據(jù)類型僅僅存儲日期,并且TIME系統(tǒng)數(shù)據(jù)類型僅僅存儲時間。使用DATE和TIME系統(tǒng)數(shù)據(jù)類型就像使用datetime系統(tǒng)數(shù)據(jù)類型一樣。

 

在第一個例子當(dāng)中,你使用新的數(shù)據(jù)類型申明了你的變量并且簡單的用getdate()函數(shù)的返回值設(shè)定了變量的值。就像下面顯示的其他的時間數(shù)據(jù)類型一樣,time數(shù)據(jù)類型支持七位的小數(shù)點(diǎn)位精確。

 

  1. DECLARE @Dt as DATE, @Tm as TIME set @Dt = getdate() set @Tm = getdate() select @Dt, @Tm 

在第二個例子中,我們創(chuàng)建了一個表格,并使用了date數(shù)據(jù)類型創(chuàng)建了一列。接著我們使用getdate()的值設(shè)置了一個默認(rèn)的限制。當(dāng)我們插入了一條記錄并且查詢了表格之后,我們看到了DateAdded列的值為今天的日期。

 

  1. CREATE TABLE dbo.Table_1 ( RecordID int NOT NULL, DateAdded date NULL, DataValue nvarchar(MAX) NULL )>  

在我們的第三個例子中,我們創(chuàng)建了同樣的表格,但是沒有默認(rèn)的限制。當(dāng)我們增加記錄的時候我們只是簡單的設(shè)置DateAdded列的值為getdate()系統(tǒng)函數(shù)的值。使用第二個或者第三個例子的代碼,輸出結(jié)果將會是一樣的。

  1. CREATE TABLE dbo.Table_1 ( RecordID int NOT NULL, DateAdded date NULL, DataValue nvarchar(MAX) NULL )>  

Microsoft已經(jīng)加入了一個第三日期系統(tǒng)數(shù)據(jù)類型。這個第三系統(tǒng)數(shù)據(jù)類型是datetime2。它就像已經(jīng)使用了很多年的datetime數(shù)據(jù)類型一樣,但是它要更加準(zhǔn)確。當(dāng)datetime數(shù)據(jù)類型精確到千分之一秒的時候,它被四舍五入到.000, .003 或者.007秒鐘。datetime2數(shù)據(jù)類型精確到100納秒(七位小數(shù)位)。當(dāng)我們使用datetime2數(shù)據(jù)類型的時候,你可以通過使用datetime2(n)選擇要精確到的小數(shù)位,從零到七位。datetime2數(shù)據(jù)類型的值的設(shè)置方法同datetime的設(shè)置方法一致。

 

  1. DECLARE @Dt as datetime2 set @Dt = getdate() select @Dt 

在這我們顯示了如何控制數(shù)據(jù)類型的精度。

 

  1. DECLARE @Dt as datetime2(4) set @Dt = getdate() select @Dt 

第四日期系統(tǒng)數(shù)據(jù)類型已經(jīng)被加到了datetimeoffset系統(tǒng)數(shù)據(jù)類型中。這個SQL Server 2008數(shù)據(jù)類型在它的輸出中包括了從GMT得來的時區(qū)偏移。

  1. declare @Dt as datetimeoffset(3) set @Dt = '2007-07-12 12:17:23.0 +7:00' select @Dt 

HierarchyID系統(tǒng)數(shù)據(jù)類型—伴隨這一些系統(tǒng)方法—被設(shè)計來使得存儲,查詢,修改更加容易,也使得同層次數(shù)據(jù)一起工作更加容易。這個新的數(shù)據(jù)類型被最優(yōu)化來顯示數(shù)據(jù)樹。HierarchyID數(shù)據(jù)類型支持兩種策略來進(jìn)行索引存儲。

他們叫做深度優(yōu)先遍歷和廣度優(yōu)先遍歷。在深度優(yōu)先遍歷中,在一個單一樹中的一些行在索引中被相互之間相互挨著存儲。一個原始的圖表類型數(shù)據(jù),雇員和經(jīng)理就是一個典型的例子。在廣度優(yōu)先遍歷中,行被相互之間挨著存儲。在雇員/經(jīng)理例子中,向同樣的經(jīng)理匯報的雇員們被相互之間挨著存儲。

對于HierarchyID數(shù)據(jù)類型,系統(tǒng)中有一些系統(tǒng)函數(shù)和方法與之相聯(lián)系。有一些像GetLevel(),ParentChildOrg(),DescendantLimit()和GetAncestor()。下面顯示了一個簡單的經(jīng)理和雇員之間的父子關(guān)系的例子。

  1. CREATE TABLE Organization ( NodeLevel hierarchyid, EmployeeID int,   
  2. OrgLevel as NodeLevel.GetLevel(), EmployeeName nvarchar(50) NOT NULL ) ;   
  3. GO insert into Organization (NodeLevel, EmployeeID, EmployeeName) values (hierarchyid::GetRoot(),0, 'Bob')   
  4. go Declare @Manager hierarchyid SELECT @Manager = hierarchyid::GetRoot()   
  5. FROM Organization ; insert into Organization (NodeLevel, EmployeeId, EmployeeName) values  
  6. (@Manager.GetDescendant(null, null), 1, 'Joe') go Declare @Manager hierarchyid declare   
  7. @NodeLevel hierarchyid select @NodeLevelNodeLevel = NodeLevel from Organization where EmployeeName = 'Joe'   
  8. SELECT @Manager = max(NodeLevel) FROM Organization where NodeLevel.  
  9. GetAncestor(1) = @NodeLevel insert into Organization (NodeLevel, EmployeeID, EmployeeName)  
  10. values (@NodeLevel.GetDescendant(@Manager, null),2, 'Sarah') go select NodeLevel.  
  11. ToString()as NodeLevel_String, * FROM Organization go drop table Organization go  

Select語句的輸出就像下面一樣:

 

  1. NodeLevel_StringNodeLevelEmployeeIDOrgLevelEmployeeName /0x00Bob /1/0x5811Joe /1/1/0x5AC022Sarah 

表格變量增進(jìn)

當(dāng)表格變量增進(jìn)在SQL Server 2008的先前版本中發(fā)布的時候,他們又值得被提及了。SQL Server 2008現(xiàn)在支持表格變量作為存儲過程的輸入?yún)?shù)。這需要在表格變量聲明和存儲過程聲明中使用一個用戶自定義的數(shù)據(jù)類型。下面就是一個基本實(shí)現(xiàn)的例子:

 

  1. Create a user-defined data type with a single column.  
  2. Develop a procedure with a table variable as an input parameter.   
  3. Declare a table variable of the type of the user defined data type.   
  4. Loading 10 records into the table variable and pass the table variable to the stored procedure.   
  5. create type tt_example AS TABLE (spid int) go create procedure usp_example   
  6. @spids tt_example READONLY AS SELECT * FROM @spids GO declare  
  7. @spids tt_example insert into   
  8. @spids select top 10 spid from sys.sysprocesses exec usp_example @spids=@spids  

變到TEXT, NTEXT 和 IMAGE數(shù)據(jù)類型

TEXT, NTEXT 和IMAGE數(shù)據(jù)類型有一些潛在的變化。在SQL Server 2008中,當(dāng)數(shù)據(jù)被寫到一個TEXT, NTEXT或者 IMAGE數(shù)據(jù)類型當(dāng)中時,如果數(shù)據(jù)比8000字節(jié)少時(對于NTEXT來說是4000字符,對于TEXT和 IMAGE是8000)數(shù)據(jù)會被存儲在行中,如果數(shù)據(jù)長度比上面提到的限制大的話,數(shù)據(jù)就被存儲在一個單獨(dú)的數(shù)據(jù)頁中,這很像Microsoft SQL Server 2005和之前的版本對于數(shù)據(jù)存儲的方式。當(dāng)數(shù)據(jù)比那些限制大的時候,就需要一個數(shù)據(jù)指針,這也和先前的版本一樣。

 

在SQL Server 2008 July CTP和T-SQL數(shù)據(jù)類型中有很多新的和另人興奮的變化。盡管還有更加新的和改進(jìn)的特性會在將來的版本中發(fā)布。

【編輯推薦】

  1. SQL Server索引的正確使用標(biāo)準(zhǔn)是啥樣?
  2. SQL Server索引選擇的引用與建議
  3. SQL Server評價索引之有效性
  4. SQL Server索引直方圖的內(nèi)容描述
  5. 關(guān)于SQL Server索引密度的知識

 

 

 

責(zé)任編輯:佚名 來源: 清華大學(xué)出版社
相關(guān)推薦

2010-06-29 17:38:01

SQL Server

2011-03-15 13:57:46

2011-05-24 13:33:45

2010-07-20 10:40:21

2010-07-08 15:40:28

SQL Server嵌

2010-07-06 15:02:12

SQL Server

2020-07-13 11:13:04

數(shù)據(jù)中心IT技術(shù)

2009-04-16 17:44:31

2009-04-16 18:15:19

動作審核審核活動SQL Server

2011-03-29 12:42:25

SQL Server 高效性

2009-04-16 17:34:19

2011-03-29 11:21:47

SQL Server 商業(yè)智能

2009-02-16 13:21:25

數(shù)據(jù)挖掘SQL Server SQL Server

2011-05-24 13:39:49

SQL Server

2010-07-13 10:22:06

SQL Server

2011-03-29 13:10:56

SQL Server

2009-04-16 18:25:55

2009-04-27 15:02:42

SQL Server 數(shù)據(jù)庫引擎升級

2010-06-28 16:56:27

SQL Server

2010-06-01 23:00:18

IPv6路由協(xié)議
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號