在05之后,那些sysobjects之类的表,实质是一个“视图”,除了使用DAC(出自《Microsoft SQL Server 2008 Internals》),好像还有一种方式,忘记了。否则你无法“看到”实质。更别说更新了。对于楼主这个需求,我第一反映是不会有正常操作需要的,除非是黑客行为或者为了掩饰一些什么才需要做。这些数据不应该被修改,或者说你更希望知道它的值,以便于统计、维护操作。所以我建议楼主还是算了吧。我觉得没有方法可以修改,即使有,也不要去改。
sp_configure 'allow updates',1
reconfigure with override
go
update sysobjects set crdate='2007-05-30' where id=object_id('表名')
go
sp_configure 'allow updates',0
reconfigure with override