体验SQL Server2005中T-SQL特性
2008-09-04 10:00:35 来源:WEB开发网selectROW_NUMBER()OVER(ORDERBYemployee_id)AS’RowNumber’,*from
dbo.employee
结果
Row Numberemployee_idFirstnameLastnamesoc_sec15623222TimJones123-65-874525632111RobKinkad456-69-875436365666JimMiller236-56-898947563333JoeRoberts564-89-5555
这个查询返回所有的雇员和一个显示每条记录在哪一行的一个序号。OVER语句使SQL Server基于employee_id列增加行序号。换句话说,产生了行序号,就好像数据按employee_id做了排序。这是很重要的一点,因为你仍然可以改变select的排序顺序。以下面的查询为例:
selectROW_NUMBER()OVER(ORDERBYemployee_id)AS’RowNumber’,*from
dbo.employee
ORDERBYsoc_sec
结果
Row Numberemployee_idFirstnameLastnamesoc_sec15623222TimJones123-65-874536365666JimMiller236-56-898925632111RobKinkad456-69-875447563333JoeRoberts564-89-5555
注意第二个结果集数据是按社会安全编号来排序的,但是行号仍然创建得好像数据是按employee_id排序的。
数据定义语言(DDL)触发器
触发器很久以来就是T-SQL特性的一部分,现在他们的作用被扩大了。在SQL Server2005中,微软提供了数据定义语言(DDL)触发器。DDL触发器,就像名字所暗示的,可以配置为当在SQL Server 中DDL活动发生时它就会执行。DDL语句是由任何你在SQL Server数据库中使用的修改、创建或删除对象的命令组成。一般情况下,大多数DDL语句以create、alter或drop开头。利用DDL触发器,你可以选择无论任何时候只要一个用户发出drop TABLE命令就运行某一脚本。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››体验Win8 OneNote 高效率大功能
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接