sqlserver2005 TSql新功能學(xué)習(xí)總結(jié)(數(shù)據(jù)類型篇)
更新時間:2010年07月20日 01:53:23 作者:
sql server2005 TSql新功能學(xué)習(xí)總結(jié)(數(shù)據(jù)類型篇) ,希望對需要的朋友有所幫助。
sql server2005新增加了2大數(shù)據(jù)類型:
1.大值數(shù)據(jù)類型
2.xml
1.大值數(shù)據(jù)類型
Microsoft SQL Server 2005 中引入了 max 說明符。此說明符增強(qiáng)了 varchar、nvarchar 和 varbinary 數(shù)據(jù)類型的存儲能力。varchar(max)、nvarchar(max) 和 varbinary(max) 統(tǒng)稱為大值數(shù)據(jù)類型。您可以使用大值數(shù)據(jù)類型來存儲最大為 2^31-1 個字節(jié)的數(shù)據(jù)。
大值數(shù)據(jù)類型和 SQL Server 早期版本中與之對應(yīng)的數(shù)據(jù)類型之間的關(guān)系:
varchar(max) text
nvarchar(max) ntext
varbinary(max) image
重要提示:
在 Microsoft SQL Server 以后的版本中,將刪除 ntext、text 和 image 數(shù)據(jù)類型。請避免在新開發(fā)工作中使用這些數(shù)據(jù)類型,并考慮修改當(dāng)前使用這些數(shù)據(jù)類型的應(yīng)用程序。請改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
更新大值數(shù)據(jù)類型
UPDATE 語句支持 .WRITE( ) 子句對基礎(chǔ)大值數(shù)據(jù)列進(jìn)行部分更新。這類似于 SQL Server 早期版本中所支持的對 text、ntext、image 數(shù)據(jù)類型的文本指針操作、WRITETEXT 和 UPDATETEX。
使用 .WRITE (expression, @Offset, @Length) 子句執(zhí)行對 varchar(max)、nvarchar(max) 和 varbinary(max) 等數(shù)據(jù)類型的部分或完整更新。
若要針對其他字符或二進(jìn)制數(shù)據(jù)類型獲得相同的 .WRITE 功能,可以使用 STUFF等字符函數(shù)
注意事項:
0.@Offset 是基于零的序號位置.
1.不能使用 .WRITE 子句更新 NULL 列或?qū)?column_name 的值設(shè)置為 NULL。
注意事項:
0.@Offset 是基于零的序號位置.
1 .不能使用 .WRITE 子句更新 NULL 列或?qū)?column_name 的值設(shè)置為 NULL。
create table test1( ids int, DocumentSummary nvarchar(max))
go
select * from test1
go
insert into test1
select 1,null
go
select * from test1
go
--錯誤不能使用.WRITE 子句更新NULL 列
update test1
set DocumentSummary.WRITE(N'abcdefg',0,NULL)
--正確的
update test1
set DocumentSummary=N'abcdefg'
select * from test1
go
2.如果將 expression 設(shè)置為 NULL,則忽略 @Length,并將 column_name 中的值按指定的 @Offset 截斷。
--把efg截斷,得到abcd
update test1
set DocumentSummary.WRITE(Null , 4 ,0)
select * from test1
go
3.如果 @Offset 為 NULL,則更新操作將在現(xiàn)有 column_name 值的結(jié)尾追加 expression,并忽略 @Length。
-- 在結(jié)尾追加hi,得到abcdefghi
update test1
set DocumentSummary.WRITE('hi' , null ,0)
select * from test1
go
4.如果 @Length 為 NULL,則更新操作將刪除從 @Offset 到 column_name 值的結(jié)尾的所有數(shù)據(jù)。
-- 得到ahi
update test1
set DocumentSummary.WRITE('hi' , 1 ,null)
select * from test1
go
.xml
存儲的 xml 數(shù)據(jù)類型表示實例大小不能超過 2 GB。
1.大值數(shù)據(jù)類型
2.xml
1.大值數(shù)據(jù)類型
Microsoft SQL Server 2005 中引入了 max 說明符。此說明符增強(qiáng)了 varchar、nvarchar 和 varbinary 數(shù)據(jù)類型的存儲能力。varchar(max)、nvarchar(max) 和 varbinary(max) 統(tǒng)稱為大值數(shù)據(jù)類型。您可以使用大值數(shù)據(jù)類型來存儲最大為 2^31-1 個字節(jié)的數(shù)據(jù)。
大值數(shù)據(jù)類型和 SQL Server 早期版本中與之對應(yīng)的數(shù)據(jù)類型之間的關(guān)系:
varchar(max) text
nvarchar(max) ntext
varbinary(max) image
重要提示:
在 Microsoft SQL Server 以后的版本中,將刪除 ntext、text 和 image 數(shù)據(jù)類型。請避免在新開發(fā)工作中使用這些數(shù)據(jù)類型,并考慮修改當(dāng)前使用這些數(shù)據(jù)類型的應(yīng)用程序。請改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
更新大值數(shù)據(jù)類型
UPDATE 語句支持 .WRITE( ) 子句對基礎(chǔ)大值數(shù)據(jù)列進(jìn)行部分更新。這類似于 SQL Server 早期版本中所支持的對 text、ntext、image 數(shù)據(jù)類型的文本指針操作、WRITETEXT 和 UPDATETEX。
使用 .WRITE (expression, @Offset, @Length) 子句執(zhí)行對 varchar(max)、nvarchar(max) 和 varbinary(max) 等數(shù)據(jù)類型的部分或完整更新。
若要針對其他字符或二進(jìn)制數(shù)據(jù)類型獲得相同的 .WRITE 功能,可以使用 STUFF等字符函數(shù)
注意事項:
0.@Offset 是基于零的序號位置.
1.不能使用 .WRITE 子句更新 NULL 列或?qū)?column_name 的值設(shè)置為 NULL。
注意事項:
0.@Offset 是基于零的序號位置.
1 .不能使用 .WRITE 子句更新 NULL 列或?qū)?column_name 的值設(shè)置為 NULL。
復(fù)制代碼 代碼如下:
create table test1( ids int, DocumentSummary nvarchar(max))
go
select * from test1
go
insert into test1
select 1,null
go
select * from test1
go
--錯誤不能使用.WRITE 子句更新NULL 列
update test1
set DocumentSummary.WRITE(N'abcdefg',0,NULL)
--正確的
update test1
set DocumentSummary=N'abcdefg'
select * from test1
go
2.如果將 expression 設(shè)置為 NULL,則忽略 @Length,并將 column_name 中的值按指定的 @Offset 截斷。
復(fù)制代碼 代碼如下:
--把efg截斷,得到abcd
update test1
set DocumentSummary.WRITE(Null , 4 ,0)
select * from test1
go
3.如果 @Offset 為 NULL,則更新操作將在現(xiàn)有 column_name 值的結(jié)尾追加 expression,并忽略 @Length。
復(fù)制代碼 代碼如下:
-- 在結(jié)尾追加hi,得到abcdefghi
update test1
set DocumentSummary.WRITE('hi' , null ,0)
select * from test1
go
4.如果 @Length 為 NULL,則更新操作將刪除從 @Offset 到 column_name 值的結(jié)尾的所有數(shù)據(jù)。
復(fù)制代碼 代碼如下:
-- 得到ahi
update test1
set DocumentSummary.WRITE('hi' , 1 ,null)
select * from test1
go
.xml
存儲的 xml 數(shù)據(jù)類型表示實例大小不能超過 2 GB。
您可能感興趣的文章:
- SQL Server 中的數(shù)據(jù)類型隱式轉(zhuǎn)換問題
- SQL Server中T-SQL 數(shù)據(jù)類型轉(zhuǎn)換詳解
- 詳解SQL Server中的數(shù)據(jù)類型
- SQL Server數(shù)據(jù)類型轉(zhuǎn)換方法
- SQL Server比較常見數(shù)據(jù)類型詳解
- SQL Server數(shù)據(jù)類型char、nchar、varchar、nvarchar的區(qū)別淺析
- SQL Server中實現(xiàn)二進(jìn)制與字符類型之間的數(shù)據(jù)轉(zhuǎn)換
- SQLserver查詢數(shù)據(jù)類型為ntext是空或NULL值的方法
- SQL SERVER 數(shù)據(jù)類型詳解補(bǔ)充2
- sql server 常用的幾個數(shù)據(jù)類型
- sqlserver 數(shù)據(jù)類型轉(zhuǎn)換小實驗
- SQL SERVER的數(shù)據(jù)類型
- Sql Server之?dāng)?shù)據(jù)類型詳解
相關(guān)文章
SQL Server 使用 SET FMTONLY ON 獲得表的元數(shù)據(jù)
本文介紹SQL Server2005以及之后的版本,通過 SET FMTONLY ON 獲得表的元數(shù)據(jù)的方法,小伙伴們可以參考一下。2016-05-05
PowerDesigner中如何導(dǎo)入SQL Server數(shù)據(jù)庫
這篇文章向我們介紹了如何導(dǎo)入SQL Server數(shù)據(jù)庫到PowerDesigner中的詳細(xì)步驟說明,并附帶圖片介紹,需要了解的朋友可以參考下2015-07-07
關(guān)于SQLServer2005的學(xué)習(xí)筆記 XML的處理
在 SQLServer2005 中對 XML 的處理功能顯然增強(qiáng)了很多,提供了 query(),value(),exist(),modify(),nodes() 等函數(shù)。2010-04-04
sql2005 數(shù)據(jù)庫轉(zhuǎn)為sql2000數(shù)據(jù)庫的方法(數(shù)據(jù)導(dǎo)出導(dǎo)入)
今天一網(wǎng)友問我如何將sql2005數(shù)據(jù)庫轉(zhuǎn)換為sql2000,因為sql2005不如用sql2000更簡單與熟悉,其實就是通過數(shù)據(jù)導(dǎo)出導(dǎo)入的方法即可,這里分享下方便需要的朋友2012-11-11
SQLServer2005 沒有服務(wù)器名稱的兩種解決方法
這篇文章主要介紹了SQLServer2005 沒有服務(wù)器名稱的兩種解決方法,需要的朋友可以參考下2015-01-01

