我正在创建一个数据库来存储用户信息,而对用户所做的更改将需要被记录。
这将最终导致某种“时间线”,因此日期/时间因素是至关重要的。
对于这个问题,我将使用以下示例:
#ID - int
memName - string
memBio - string
memStatusString - string现在,我的想法是将它链接到这样的表:
ID - int
#memID - int
dateNameChanged - DateTime
dateBioChanged - DateTime
dateStatusStringChanged - DateTime这是记录信息的好方法吗?我想在另一张桌子上做这件事,以便以后能很容易地列出。
此外,我从不将日志记录放在同一个表中,因为日志日期只在更改后才会出现。如果用户从未改变过,那将是对空间的浪费。
结论:
有更好的方法吗?
更新:我为缺乏信息而道歉。我使用的是Server 2008,asp net c# 3.5-4(只做数据库结构atm).
另外,成员将有不同的表,如tblMemberInformation、tblClanInformation、tblMemberGameRank
每个表中的每个更改数据(只是为了确认)都需要存储到一个日志文件中,并带有相应的日期。
发布于 2012-08-04 11:08:50
您尚未指定正在使用的Server版本,因此我将假定是最近的版本。
Server 2008+已经在审计中构建
审核Server数据库引擎或单个数据库的实例涉及跟踪和记录数据库引擎上发生的事件。Server审核允许您创建服务器审核,它可以包含服务器级事件的服务器审核规范和数据库级事件的数据库审核规范。已审核的事件可以写入事件日志或审核文件。
发布于 2012-08-06 20:34:24
SQL审核允许您对特定对象的特定操作进行审计。例如,您可以在一个表上审计UPDATE。见actions.aspx。我意识到SQL审计可能不适合这一需求,但这是它的能力。
https://stackoverflow.com/questions/11808087
复制相似问题