是否有可能修改表的表的创建日期?我们在右击table > properties > Created date
或sys.tables.create_date
时看到的日期。修改表的创建日期
即使创建了表个月前,我希望它看起来像他们今天被创造。
是否有可能修改表的表的创建日期?我们在右击table > properties > Created date
或sys.tables.create_date
时看到的日期。修改表的创建日期
即使创建了表个月前,我希望它看起来像他们今天被创造。
不超过你可以改变你的生日,你为什么会想?
你可以只
select * into #tmp from [tablename]
drop table [tablename]
select * into [tablename] from #tmp
这将重建表和保护结构(一个点)。您可以编写一个新表格,复制数据然后删除和重命名。如上。
我喜欢生日类比。和一些可能工作(只要他们想改变它到今天) – 2012-02-25 17:24:57
+1谢谢你,我用的脚本:) – Ketan 2012-02-25 17:43:04
没问题,你的欢迎。 – 2012-02-25 17:47:02
在SQL Server 2000中,您可以通过黑客与sp_configure选项的系统表做到这一点“允许更新”设置为1
这是不可能在SQL Server 2005及以上。从联机丛书:
此选项仍然存在于sp_configure存储过程, 虽然它的功能是在Microsoft SQL Server 2005 (设置不起作用)不可用。在SQL Server 2005中,不支持对 系统表的直接更新。
在2005年,我相信你可以通过使用dedicated administrator connection“游戏系统”,但我认为这是RTM后不久固定(或它需要一个跟踪标志或其他一些无证设置工作)。即使使用DAC,并设置为1 sp_configure选项,两个SQL Server 2005的SP4和SQL Server 2008 R2 SP1的产量尝试这样的:
Msg 259, Level 16, State 1
Ad hoc updates to system catalogs are not allowed.
你是谁试图愚弄,为什么?
编辑
现在,我们对为什么,你可以创建一个不依附于任何域的虚拟机,将时光倒流到任何你想要的日期,创建一个数据库,创造出更多的信息您的对象,备份数据库,将其复制到主机,并将其恢复。这些对象的create_date
仍然应该反映早期的日期,尽管数据库本身可能不(我没有测试过)。
您可以通过改变时钟拨回到自己的系统上做到这一点,但我不知道如果我想用我的时钟一塌糊涂这种方式已经安装了SQL Server之后以及在什么会已创建对象在短时间内成为“未来”。 VM对我来说绝对看起来更安全。
我的教授当然是因为我懒惰而拖延;) – Ketan 2012-02-25 17:43:44
呵呵,我想我误解了。你希望教授认为你今天创建了数据库,而不是你一直在研究它。我会留下修改后的答案,以防万一有人想让他们的表看起来像老*而不是*更新*。 – 2012-02-25 17:51:15
你为什么要这么做? – Mat 2012-02-25 16:54:03
愚弄我的大学,相信我已经从零开始创建数据库......以及他们检查日期等等,不想再次构建完整的数据库 – Ketan 2012-02-25 17:42:01