update sysobjects set crdate='要改的时间' where name='表名' and xtype='U'
2
select  checksum_agg(binary_checksum(*))  from  table1  
把前后的校验和比较,如果不等,则表发生了变化
记录update,insert操作可用触发器做

解决方案 »

  1.   

    --问题1.修改系统表需要开启修改系统表的功能才能修改.--在查询分析器中执行:
    use 你的数据库名
    goSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
    goupdate sysobjects set crdate=getdate()='要改的时间' where name='表名' and xtype='U'
    goSP_CONFIGURE 'ALLOW UPDATES',0 RECONFIGURE WITH OVERRIDE
      

  2.   

    问题2,你可以直接通过SQL的事件探察器来监视开始--程序--MS SQLSERVER
    --事件探察器(SQL Profiler)
    --文件
    --新建
    --设置跟踪的项目...
    --然后数据库的调用情况就会显示出来
      

  3.   

    如果你要自己修改记录日志,那就为每个表写触发器. --示例:
    create trigger t_process on 表
    for inset  --插入的处理
    as
    select * from inserted  --这条语句可以得到插入的记录
    gocreate trigger t_process on 表
    for delete  --删除的处理
    as
    select * from deleted  --这条语句可以得到删除的记录
    go
      

  4.   

    create trigger t_process on 表
    for update  --更新的处理
    as
    select * from deleted  --这条语句可以得到修改前的记录
    select * from inserted  --这条语句可以得到修改后的记录
    go