pb中创建数据操作日志字典[收藏]

发表于:2007-06-07来源:作者:点击数: 标签:
创建操作日志字典 -------------------------------------------------------------Susue --------- 如表已存在,先删除 --if exists(select 1 from sysobjects where name='S_LOG' and Xtype='U') drop table S_LOG ; go --------- 建新表和主键 create tabl

创建操作日志字典 -------------------------------------------------------------Susue

--------- 如表已存在,先删除
--if exists(select 1 from  sysobjects where name='S_LOG' and Xtype='U') drop table S_LOG ;
go

--------- 建新表和主键
create table S_LOG (
 P_ID  int IDENTITY NOT NULL, --ID
 C_UID  varchar(20)  NULL,  --编号姓名
 C_DDTT  varchar(20)  NULL,  --日期时间
 C_ACT varchar(20) NULL, --动作
 C_SQL  varchar(2048)  NULL, --SQL语句
 CONSTRAINT PK_LOG PRIMARY KEY CLUSTERED (P_ID)) ;


////////////////////////////////////////////////////////////
//函数名: none gf_log(string s_sql)
//  参数: string s_sql  //sql语句 
//  调用: datawindow SQLPreview Script:
//          gf_log(this.GetSQLPreview())
//          pb高版本可用
//          gf_log(sqlsyntax)
//  功能:记录用户操作日志
//  原创: Susue  2003-12-14 
////////////////////////////////////////////////////////////

string ls_act //动作
if pos(s_sql,'SELECT') > 0 then return
choose case left(s_sql,6)
 case 'INSERT'
  ls_act = '插入'
 case 'UPDATE'
  ls_act = '更新'
 case 'DELETE'
  ls_act = '删除'
end choose

string ls_uid,ls_ddtt //用户id,系统时间
ls_uid = gs_uid + gs_name
ls_ddtt = gf_datetime() //自定义取得系统时间函数
insert into s_log (c_uid,c_ddtt,c_act,c_sql)
 values (:ls_uid,:ls_ddtt,:ls_act,:s_sql);


原文转自:http://www.ltesting.net