1、新建数据库,格式如下(操作内容数据类型可以大一点),表名称为tbl_Log
1、新建DBHelper.cs类,在里边定义函数,需要的时候调用即可
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
namespace PLA //命名空间需要更改为自己工程名字
{
class DBHelper
{
private static string connStr = "data source=.;initial catalog=PLA;integrated security=true"; //PLA需要更改为自己数据库名称
public static SqlConnection connection = new SqlConnection(connStr);
public static bool AddLogInfo(string name, string ID, string details, string DateTime) //日志函数
{
string commandStr = String.Format("INSERT INTO tbl_Log(操作者姓名,操作者身份证号,操作内容,操作时间) VALUES(@name,@ID,@details,@DateTime)", connection);
SqlCommand command = new SqlCommand(commandStr, connection);
command.Parameters.Add("@name", SqlDbType.VarChar, 50).Value = name;
command.Parameters.Add("@ID", SqlDbType.VarChar, 18).Value = ID;
command.Parameters.Add("@details", SqlDbType.VarChar, 100).Value = details;
command.Parameters.Add("@DateTime", SqlDbType.VarChar, 100).Value = DateTime;
connection.Open();
command.ExecuteNonQuery();
connection.Close();
return true;
}
public static DataSet GetLogInfo() //DataGridView控件显示操作日志内容需要调用的函数
{
string commStr = String.Format("SELECT * FROM tbl_Log ");
SqlDataAdapter da = new SqlDataAdapter(commStr, connection);
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
2、调用方法,比如我有一个button按钮的功能是删除,我就可以在这个按钮里添加以下程序
string str_Details = ""; //定义操作详细内容字符串
str_Details = string.Format("退役军人身份证号:{0}/退役军人姓名:{1} /荣誉信息删除 ", txtUserDetilsIDManage.Text, txtUserDetilsNameManage.Text); //填充操作详细信息
DBHelper.AddLogInfo(AdminName, AdminID, str_Details, this.label2Datetime.Text);//姓名和ID可更改该为自己的内容,日期就是老师上课讲的,label框里的内容
或 简单点,不需要详细信息
DBHelper.AddLogInfo(this.txtAdminNameLogin.Text, this.txtAdminIDLogin.Text, "登录", this.label2Datetime.Text);
3、将操作日志显示到DataGridView(命名是dgvLog),在窗体Load函数里添加
this.dgvLog.DataSource = DBHelper.GetLogInfo().Tables[0];
4、DataGridView属性调整,就可以自适应列宽了