日期:2014-05-18  浏览次数:20665 次

谁能说下从sql server 2000到2010的TSQL特性
谁能说下从sql server 2000到2010的TSQL特性

------解决方案--------------------
SQL code

2005在2000的基础上增加了
1. varchar(max),nvarchar(max),varbinary(max) 数据类型最多能保存2GB的数据,可以取代text,ntext,image数据类型
2.xml数据类型.允许sqlserver数据库中保存xml片段和文档.
3.error handing(通常严重度为21及以上的错误) 
begin try
    begin tran
    select 1/0 as num
    commit tran
    print '提交了...'
end try
begin catch
    rollback tran
    print ERROR_MESSAGE();
    print'有错,回滚了...'
end catch
4.新增快照隔离级别. begin tran  update tb 的数据不提交 ...新建连接 查tb表 查到的是未修改前的数据.
5.top 后面能跟"括号" 括号里可以是数字和表达式 top(x+y/10.x+y%10) percent 
6.output子句可以从修改语句(insert,update,delete)中返回到表变量中 
7.排名函数row_number,能完全代替 select identity(int,1,1),* into tb from ta order by ta.id desc
8.cte 表表达式.类似与视图,派生表, 区别在于 视图是永久的, 派生表又只能调用一次 ,cte是临时的又能多次调用的的表表达式. 强大之处在递归
9.行列转换pivot , 作数据统计 比sqlserver2000少写代码. 但是没有2000的写大直观 完全代替 select 聚合(case when ) group by
10. 新增apply(可以用真实表连接,派生表,虚拟表)
11. sqlserver2000虽然有派生表功能 但是不能 update 派生表d ...(select tb)as d
12. 新增快照,比备份来的快.已64kb递增,是个稀疏文件.所以要建立在ntfs格式的磁盘上.能通过他来还原表,
    还原库结构,还原数据库.
13. 新增了.数据库镜像, 热备份. 同步传输解决数据丢失问题,事务流源源不断流星镜像.镜像收到后回执主  体.保证数据完整性, 增加见证服务器解决停机时间问题. 官方认为小于3秒完成故障转移.
14. 恢复机制的改变, 虽然2000 也是分三个步骤,分析日志,redo,undo,但是2000必须等到undo后才能上线.才能online,也就是数据库变的可用, 而2005 则redo 前滚完成后就可以在线.所以2005时间来的更短!
15. 2005增加了表变量.
16. 动态管理视图,动态管理函数
17. 对logshipping的监控多了几张表. errordetail 之类的
18. index(online)在线创建修改索引.
19. databaseMail代替sqlMail 设置更简单.三步完成. 不能接受邮件,只能发送邮件!
20. 增加了积极排他锁.(所以,2005更加注重对tempdb的管理)
21. 应该还有很多..我知道就这么多.

sql 2008在 sql2005基础上增加了
符合运算符declare @s int=1; set @s+=2  --其好处在于比set @s=@s+2 少用一个操作符和少用一个操作数...从而提高了编译性能.
日期类型增加了时区,时差..DATETIMEOFFSET

我一 sql新人.不对的地方请多多指教.