日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
SQLServer2008稀疏列與列集的經(jīng)驗(yàn)總結(jié)

此文章主要向大家講述的是SQL Server 2008稀疏列與SQL Server 2008列集這兩個(gè)新增的特性的經(jīng)驗(yàn)總結(jié)的描述,如果你對(duì)SQL Server 2008稀疏列與SQL Server 2008列集這兩個(gè)新增的特性的經(jīng)驗(yàn)有興趣的話(huà),你就可以對(duì)以下的文章點(diǎn)擊觀看了。

在江川等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶(hù)提供成都做網(wǎng)站、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需制作網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都營(yíng)銷(xiāo)網(wǎng)站建設(shè),外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè),江川網(wǎng)站建設(shè)費(fèi)用合理。

我的總結(jié)如下

1. 稀疏列主要是為了提供對(duì)可空字段的更好一個(gè)存儲(chǔ)機(jī)制,它可以節(jié)省空間(具體說(shuō)它在真正空值的時(shí)候就不占空間),但也會(huì)帶來(lái)一些性能方面的影響。所以要有所權(quán)衡。

SQL Server 2008稀疏列主要使用場(chǎng)景:一個(gè)實(shí)體有很多屬性列,但很多屬性都可能填不滿(mǎn)。這在以前我們稱(chēng)為屬性集問(wèn)題。

稀疏列不是一個(gè)數(shù)據(jù)類(lèi)型,它是一個(gè)列的屬性而已。

2. 列集是可以定義所有稀疏列的集合。這是一個(gè)XML數(shù)據(jù)類(lèi)型。如果為多個(gè)SQL Server 2008稀疏列定義了一個(gè)列集,那么針對(duì)這些列的修改,就既可以直接修改這些列,也可以通過(guò)一次性通過(guò)修改列集字段來(lái)完成。列集字段其實(shí)是一個(gè)計(jì)算字段。

下面來(lái)看一個(gè)例子

首先,看看如何使用稀疏列。這里的關(guān)鍵在于定義的時(shí)候使用SPARSE關(guān)鍵字

 
 
 
  1. USE AdventureWorks 
  2. GO 
  3. CREATE TABLE DocumentStore 
  4. (DocID int PRIMARY KEY, 
  5. Title varchar(200) NOT NULL, 
  6. ProductionSpecification varchar(20) SPARSE NULL, 
  7. ProductionLocation smallint SPARSE NULL, 
  8. MarketingSurveyGroup varchar(20) SPARSE NULL ) ; 
  9. GO 

插入數(shù)據(jù)是一模一樣的 

 
 
 
  1. INSERT DocumentStore(DocID, Title, ProductionSpecification, ProductionLocation) 
  2. VALUES (1, 'Tire Spec 1', 'AXZZ217', 27) 
  3. GO 
  4. INSERT DocumentStore(DocID, Title, MarketingSurveyGroup) 
  5. VALUES (2, 'Survey 2142', 'Men 25 - 35')

GO然后,我們看看如何把列集與SQL Server 2008稀疏列進(jìn)行結(jié)合使用

 
 
 
  1. USE AdventureWorks; 
  2. GO 
  3. CREATE TABLE DocumentStoreWithColumnSet 
  4. (DocID int PRIMARY KEY, 
  5. Title varchar(200) NOT NULL, 
  6. ProductionSpecification varchar(20) SPARSE NULL, 
  7. ProductionLocation smallint SPARSE NULL, 
  8. MarketingSurveyGroup varchar(20) SPARSE NULL, 
  9. MarketingProgramID int SPARSE NULL, 
  10. SpecialPurposeColumns XML COLUMN_SET FOR ALL_SPARSE_COLUMNS);

目前這里只是支持ALL_SPARSE_COLUMNS這個(gè)關(guān)鍵字,也就是說(shuō)所有的稀疏列 

GO

使用列集之后,既可以直接使用列集插入數(shù)據(jù),也可以使用SQL Server 2008稀疏列本身插入數(shù)據(jù)

 
 
 
  1. INSERT DocumentStoreWithColumnSet (DocID, Title, ProductionSpecification, ProductionLocation) 
  2. VALUES (1, 'Tire Spec 1', 'AXZZ217', 27) 
  3. GO 
  4. INSERT DocumentStoreWithColumnSet (DocID, Title, MarketingSurveyGroup) 
  5. VALUES (2, 'Survey 2142', 'Men 25 - 35') 
  6. GO
  7. INSERT DocumentStoreWithColumnSet (DocID, Title, SpecialPurposeColumns) 
  8. VALUES  (3, 'Tire Spec 2','AXW9R41138')  

GO有意思的是,此時(shí)如果再以SELECT *的語(yǔ)法查詢(xún)?cè)摫淼脑?huà),那些稀疏列默認(rèn)是不會(huì)被返回的,而只是返回列集

當(dāng)然啦,如果還是想返回SQL Server 2008稀疏列本身的內(nèi)容,我們可以通過(guò)下面的語(yǔ)法

 
 
 
  1. SELECT  DocID, Title, ProductionSpecification, ProductionLocation FROM  
  2. DocumentStoreWithColumnSet WHERE ProductionSpecification IS NOT NULL ;

至于更新,和插入一樣,兩種方式都是可以的,且效果一樣


網(wǎng)頁(yè)名稱(chēng):SQLServer2008稀疏列與列集的經(jīng)驗(yàn)總結(jié)
文章位置:http://m.5511xx.com/article/djdgcdc.html