-- ============================================= -- ODF v1.2.0 - 创建审计日志表 odf_audit_logs -- 需求: 8.1, 8.2 -- ============================================= CREATE TABLE odf_audit_logs ( Id INT IDENTITY(1,1) PRIMARY KEY, TableName NVARCHAR(100) NOT NULL, -- 操作的表名 RecordId INT NULL, -- 操作的记录ID OperationType NVARCHAR(20) NOT NULL, -- 操作类型: INSERT/UPDATE/DELETE OperatorId BIGINT NOT NULL, -- 操作人用户ID OperatorName NVARCHAR(100) NULL, -- 操作人用户名 SourceClient NVARCHAR(20) NOT NULL, -- 操作来源: App/Admin OldData NVARCHAR(MAX) NULL, -- 修改前数据 (JSON) NewData NVARCHAR(MAX) NULL, -- 修改后数据 (JSON) OperationTime DATETIME DEFAULT GETDATE(), -- 操作时间 DeptId BIGINT NULL, -- 操作人所属部门 Remark NVARCHAR(500) NULL -- 备注 ); -- 索引:按操作时间范围查询 CREATE INDEX IX_odf_audit_logs_OperationTime ON odf_audit_logs(OperationTime); -- 索引:按表名筛选 CREATE INDEX IX_odf_audit_logs_TableName ON odf_audit_logs(TableName); -- 索引:按操作类型筛选 CREATE INDEX IX_odf_audit_logs_OperationType ON odf_audit_logs(OperationType);