随笔分类 -  SQL Server

SQL Server 事务自动回滚
摘要:要在事务中执行一堆 SQL,比方说通过一组 insert 语句插入很多数据,以前我习惯这样写:begintrant1--balabala--balabalaif@@error=0committrant1elserollbacktrant1今天编写一个类似脚本的时候发现,中间一个 insert 语句失败了,但是其他语句却继续执行了,导致了事务没有整体回滚的现象。非常坑爹。查了一下,原来是有一个开关 XACT_ABORT. 默认是 off 的,也就是说事务 fail 的时候不会自动回滚所有事务范围内的语句,只会回滚直接引起错误的那一条语句。而要实现整体回滚的效果,只要在事务开始之前把这个开关置为 阅读全文

posted @ 2012-08-21 23:12 NeilChen 阅读(1505) 评论(0) 推荐(1) 编辑

SQL Server 中针对 Xml 字段类型的性能优化
摘要:http://msdn.microsoft.com/en-us/library/ms345118(SQL.90).aspx http://msdn.microsoft.com/zh-cn/library/bb522451.aspx 阅读全文

posted @ 2011-04-18 18:50 NeilChen 阅读(486) 评论(0) 推荐(0) 编辑

Virtual PC 2007 SP1 中,Windows Server 2008 SP2 下安装 SQL Server 2008 R2
摘要:装到一半会报错,错误码 2337. Solution: 用 WinRAR 解压 SQL Server 2008 R2 的 ISO 文件,然后所有文件 copy 到虚机中再安装。 原因:Virtual PC 的 Capture ISO Image 命令好像是使用 zip 来解压读取 ISO 里的内容,而不知道为什么读 SQL Server 2008 R2 的盘总会出错。 http://social.... 阅读全文

posted @ 2011-04-02 05:20 NeilChen 阅读(1022) 评论(0) 推荐(0) 编辑

SQL Server Linked Server 的性能
摘要:昨天架构师建议我将一个对远程 db server 的查询修改为先配置一个 Linked Server,然后查询。这样做的目的是可以在本地把 SQL 写到一个存储过程里面,程序调用方便一点(因为不具有远程数据库的管理权限)。但是我实践了一下后,发现这样修改后性能超慢!甚至根本查不出来。后来网上搜了一下,对 Linked Server 的查询,很多情况下是需要把大量数据发送到本地来处理的,这样不慢才怪... 阅读全文

posted @ 2010-08-26 15:57 NeilChen 阅读(908) 评论(0) 推荐(0) 编辑

Reporting Services VS designer 的一个 bug
摘要:用 Visual Studio 开发 Reporting Service 报表,今天忽然一个 rdl 文件打开时莫名其妙的报错: Deserialization failed: The ‘DataType’ attribute is not declared 经过搜索知道原来这是报表设计器的一个 bug. rdl 序列化所用的 xsd 文件中没有 DataType 属性的定义,而实际生成的文件... 阅读全文

posted @ 2010-08-23 22:42 NeilChen 阅读(486) 评论(0) 推荐(0) 编辑

用 C# 开发 SQL Server 2005 的自定义聚合函数
摘要:在 SQL 中,经常需要对数据按组进行自定义的聚合操作,比如用逗号连接一系列表示 ID 的数字,但默认只有 SUM, MAX, MIN, AVG 等聚合函数。在 SQL Server 2005 中提供了编写 CLR 的托管代码的支持,我们可以用来写自定义的聚合函数。比如对于如下数据: Age Name 20 张三 21 李四 20 王二 22 赵五 18 钱六我们想得到 Ag... 阅读全文

posted @ 2006-11-15 18:53 NeilChen 阅读(6778) 评论(6) 推荐(0) 编辑

如何把 SQL Server 的自增标志列清零
摘要:dbcc checkident(test1, reseed, 0)其中 test1 是表名称。事实上可以将标志的当前值设定到任意的值。下一次插入得值将会是这个当前值 + 1.比如:dbcc checkident(test1, reseed, 10)insert into test1 (name) values('zhangsan')得到的新纪录的 id 是 11.如果重设得值会导致插入后产生重复也... 阅读全文

posted @ 2005-06-26 00:14 NeilChen 阅读(1753) 评论(2) 推荐(0) 编辑

执行存储过程的多种写法
摘要:exec test2exec test2;1exec test..test2exec test.dbo.test2exec cr.test..test2exec cr.test.dbo.test2exec cr.test.dbo.test2;1 阅读全文

posted @ 2005-03-18 12:00 NeilChen 阅读(1154) 评论(2) 推荐(0) 编辑

关于加密存储过程
摘要:如何简单的创建一个加密存储过程: create proc Test(参数列表)with encriptionas主体go为了演示,现在我们创建一个具备各种参数类型的存储过程作为测试: create proc Test ( @x int = 3, @s nvarchar(20), @y int output)with encryptionasselect @x, @sset @... 阅读全文

posted @ 2005-03-18 11:19 NeilChen 阅读(1625) 评论(1) 推荐(0) 编辑

导航

统计

点击右上角即可分享
微信分享提示