sqlserver2005 TSql新功能学习总结(数据类型篇)_mssql2005

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。

时间: 2024-11-08 22:48:52

sqlserver2005 TSql新功能学习总结(数据类型篇)_mssql2005的相关文章

值得关注:Java 1.4 即将发布版本的性能和新功能一览(转自IBM developerWorks)

性能 dW at JavaOne: 下一波 -- Java 1.4英文原文内容:JSR 在 1.4 版本中的删除部分XML API 发展得太快用户有一个参数选择断言培训记录新世界"N" 代表"新的"数据库的库到达内核进入所需的认证路径利用 WebStart 的快速开始"Tiger" 的眼睛超越 JSR考虑转向 1.4参考资料关于作者对本文的评价相关内容:一个识别用户的三向解决方案使用类属在编译时找出更多的错误Merlin 的魔力:Swing 的新

万户OA应变大考验之新员工学习篇

企业在成长中会遇到各种各样的烦恼,管理者和员工会时不时的为一些重复性的.低端的.琐碎的工作陷入苦逼状态,甚至日常工作中小小的变故都可能会给你造成大大的尴尬.而协同办公系统作为一种全面规范基础办公业务.实现高效协作的办公管理软件,它能有效帮助企业实现由粗放式管理向精细化管理的转变,帮助企业应对来自日常办公管理的各种不顺,一扫苦逼工作状态. 那么,协同办公系统能够在企业哪些办公需求场景中发挥作用呢?让我们分几期给大家讲解一下吧. 新员工入职学习压力山大 Boss李交代小胡抽空帮新入职的销售部小王学习

SKETCH用户如何看待这次PS CC 2015的新功能?

  这篇文章以一个比较激进的角度看待此次 Photoshop 升级,更多是站在了 Sketch 的一边,译者@窒息红Leon 认为这并不够客观,仅提供国外设计同行的一些想法.另外,Medium 上也有反过来更支持 Photoshop CC 2015 的设计师,推荐同时看看这篇文章:My Favourite New Features of Photoshop 2015) 前日 Adobe 更新了 Adobe CC 2015 产品线,为它们增加了许多新特性.除了如修复工具等其他摄影相关的功能,此次升

从淘宝 UWP 的新功能 -- 比较页面来谈谈 UWP 的窗口多开功能

原文:从淘宝 UWP 的新功能 -- 比较页面来谈谈 UWP 的窗口多开功能 前言 之前在 剁手党也有春天 -- 淘宝 UWP "比较"功能诞生记 这篇随笔中介绍了一下 UWP 淘宝的"比较"新功能呱呱坠地的过程.在鲜活的文字背后,其实都是程序员不眠不休的血泪史(有血有泪有史)--所以我们这次就要在看似好玩的 UWP 多窗口实现背后,挖掘一些我们也是首次接触的干活"新鲜热辣"地放松给大家.希望能使大家在想要将自己的 APP 开新窗口的时候,能从本

Json.Net6.0入门学习试水篇

原文:Json.Net6.0入门学习试水篇 前言 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序.这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构.例如,可以表示数组和复杂的

ASP.NET MVC学习之过滤器篇(2)

原文:ASP.NET MVC学习之过滤器篇(2) 下面我们继续之前的ASP.NET MVC学习之过滤器篇(1)进行学习.   3.动作过滤器 顾名思义,这个过滤器就是在动作方法调用前与调用后响应的.我们可以在调用前更改实际调用的动作,也可以在动作调用完成之后更改最终返回的结果,当然很多人一定不太明白这个到底可以干什么, 下面我们举一个比较实际的例子:   相信理解过网站的安全的一定知道跨站请求(CSRF具体可以自行百度,这里我就不去解释了),当然也有解决方案,那就是给页面中增加一个识别码,当页面

ActionBarSherlock学习笔记 第一篇——部署

ActionBarSherlock学习笔记 第一篇--部署         ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android版本上实现ActionBar的效果和功能.当在4.0+的版本使用时,会使用Android自身的ActionBar,当在4.0之前的版本使用时,则会使用ActionBarSherlock自身自定义的一套框架来实现ActionBar的功能.     要获得ActionBarSherlock,我们可以到Gi

预览ExtJS 4.0的新功能(二):客户端的对象关系映射(ORM)

4.0之前,Ext 的功能已经十分丰富,数据层却难以令人满意.作为 UI 框架,数据层可能不是重点,但明显攸关到业务顺利的展开与否.然而,3.0 之后,虽然过增加了 Ext.data.Api/REST/Direct 等的新协议,但无论 3.0 还是 2.0,Ext.data.* 底层仍维持 1.0 的对象模型.越来越多的新协议和新机制加入到 Ext.data.*后,反而造成 API 逾加凌乱.这样就有了改造 data 的必要了.可喜的是,4.0 中已经重构 Ext.data.* 部分,重点解决旧

巨大转变!教你使用ASP.NET MVC2新功能

在本系列文章中,我们将针对微软最新推出的ASP.NET MVC 2.0中提供的新特征相关的基础性编程问题进行全面的探讨.在本文(第一篇)中,我们将通过对比ASP.NET MVC框架与ASP.NET Web表单框架的方式来学习ASP.NET MVC 2.0提供的新功能. 在2010年4月,微软正式发布了Visual Studio的下一个版本2010.ASP.NET MVC 2.0也作为其中的一个新框架成员一同发行.ASP.NET MVC如今已是一个成熟的产品,采用了全新的设计,大大提高了开发效率.