程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> SqlServer2005 >> sqlserver2005 TSql新功能學習總結(數據類型篇)

sqlserver2005 TSql新功能學習總結(數據類型篇)

編輯:SqlServer2005
sql server2005新增加了2大數據類型:
1.大值數據類型
2.xml
1.大值數據類型
Microsoft SQL Server 2005 中引入了 max 說明符。此說明符增強了 varchar、nvarchar 和 varbinary 數據類型的存儲能力。varchar(max)、nvarchar(max) 和 varbinary(max) 統稱為大值數據類型。您可以使用大值數據類型來存儲最大為 2^31-1 個字節的數據。

大值數據類型和 SQL Server 早期版本中與之對應的數據類型之間的關系:
varchar(max) text
nvarchar(max) ntext
varbinary(max) image
重要提示:
在 Microsoft SQL Server 以後的版本中,將刪除 ntext、text 和 image 數據類型。請避免在新開發工作中使用這些數據類型,並考慮修改當前使用這些數據類型的應用程序。請改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
更新大值數據類型
UPDATE 語句支持 .WRITE( ) 子句對基礎大值數據列進行部分更新。這類似於 SQL Server 早期版本中所支持的對 text、ntext、image 數據類型的文本指針操作、WRITETEXT 和 UPDATETEX。
使用 .WRITE (expression, @Offset, @Length) 子句執行對 varchar(max)、nvarchar(max) 和 varbinary(max) 等數據類型的部分或完整更新。
若要針對其他字符或二進制數據類型獲得相同的 .WRITE 功能,可以使用 STUFF等字符函數
注意事項:
0.@Offset 是基於零的序號位置.
1.不能使用 .WRITE 子句更新 NULL 列或將 column_name 的值設置為 NULL。
注意事項:
0.@Offset 是基於零的序號位置.
1 .不能使用 .WRITE 子句更新 NULL 列或將 column_name 的值設置為 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 設置為 NULL,則忽略 @Length,並將 column_name 中的值按指定的 @Offset 截斷。

復制代碼 代碼如下:
--把efg截斷,得到abcd
update test1
set DocumentSummary.WRITE(Null , 4 ,0)
select * from test1
go


3.如果 @Offset 為 NULL,則更新操作將在現有 column_name 值的結尾追加 expression,並忽略 @Length。

復制代碼 代碼如下:
-- 在結尾追加hi,得到abcdefghi
update test1
set DocumentSummary.WRITE('hi' , null ,0)
select * from test1
go



4.如果 @Length 為 NULL,則更新操作將刪除從 @Offset 到 column_name 值的結尾的所有數據。

復制代碼 代碼如下:
-- 得到ahi
update test1
set DocumentSummary.WRITE('hi' , 1 ,null)
select * from test1
go

.xml
存儲的 xml 數據類型表示實例大小不能超過 2 GB。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved