摘要:
1.NULL永不=NULL .如何设置让 NULL=NULL呢?declare@tabtable(idint)insertinto@tabselect1select*from@tabwherenull=null问题解决: 比较前用 set ANSI_NULLS off ,别忘了比较完后再设置为原来的默认值.:) set ANSI_NULLS on2.分布式事务总是出错.现象:begintranselect*from[192.168.1.100].aigdollar.dbo.shoporderinfocommit该操作未能执行,因为 OLE DB 提供程序 'SQLOLEDB' 阅读全文
摘要:
表A ( id int identity(1,1) not null ,con varchar(30)) ,表B( id int ,con varchar(30) ,表C ( id int identity(1,1) not null,con varchar(30) )表A有一个 for Insert 的触发器用于向 表B插入历史记录,同时向表C记录日志.程序用的是 听堂的 SPL 组件.在程序中... 阅读全文
摘要:
从SQLSERVER6.5开始,MS提供了一个非常有用的系统存储过程sp_MSforeachtable和sp_MSforeachDB;作为DBA会经常需要检查所有的数据库或用户表,比如:检查所有数据库的容量;看看指定数据库所有用户表的容量,所有表的记录数,我们一般处理这样的问题都是用游标分别处理处理,比如:在数据库检索效率非常慢时,我们想检查数据库所有的用户表,我们就必须这样写游标: 1DECL... 阅读全文
摘要:
多行合并成一行. declare @tab table (id int )declare @i intdeclare @str varchar(300)select @i = 0 ,@str = '['while @i < 20 begin insert into @tab select @i select @i = @i + 1 endselect @str = @s... 阅读全文