strSql = "select * from Log where (Id like '%" + txtQuery.Text.Trim() + "%')or(UserType like '%" + txtQuery.Text.Trim() + "%')or(User_Name like '%" + txtQuery.Text.Trim() + "%')or(Situation like'%" + txtQuery.Text.Trim() + "%')or(Time like'%" + txtQuery.Text.Trim() + "%')";
lblCurrentUser.Text = "当前登录用户为:" + FrmLogin.Uid + " 用户类型 " + FrmLogin.UserType + " 登录时间为:" + FrmLogin.Time;
//添加用户
private void btnUserAdd_Click(object sender, EventArgs e)
{
//使用SQL插入数据语句
string sql = "insert into MovieAccount(MUserName,MUserPwd,UserType,RightFManager,RightFRegistration,RightFPwdChange,RightFLog) values (@MUserName,@MUserPwd,@UserType,@RightFManager,@RightFRegistration,@RightFPwdChange,@RightFLog)";
//判断插入的数据是否为空,如果为空,则提示重新插入!
if (txtUserName.Text.Trim() == "" || txtPwd.Text.Trim() == "" || cboUserType.Text == "")
{
MessageBox.Show("插入数据不能为空,请按要求插入数据!");
return;
}
if (cboUserType.Text == "Administrator")
{
MessageBox.Show("暂不开放注册管理员功能!");
return;
}
//判断 哪些CheckBox 被选中
AdjustChecked();
//向数据库插入参数
SqlParameter[] param ={
new SqlParameter("@MUserName",txtUserName.Text.Trim()),
new SqlParameter("@MUserPwd",txtPwd.Text.Trim()),
new SqlParameter("@UserType",cboUserType.Text.Trim()),
new SqlParameter("@RightFManager",rightFManager),
new SqlParameter("@RightFRegistration",rightFRegistration),
new SqlParameter("@RightFPwdChange",rightFPwdChange),
new SqlParameter("@RightFLog",rightFLog)
};
//调用 SqlHelper 增 方法
int n = SqlHelper.ExcuteNonQuery(sql, param);
if (n > 0)
{
MessageBox.Show("数据插入成功!");
}
else
{
MessageBox.Show("插入失败!");
return;
}
//调用CheckAllUsers() 方法 用于刷新 在添加完成数据后 自动刷新数据
CheckAllUsers();
}
//保存修改的信息
private void btnUserChange_Click(object sender, EventArgs e)
{
//在对数据进行修改之前 对文本框的内容做一下检查 是否用户已经输入内容, 如果为空 则提示重新输入
if (txtUserName.Text.Trim() == "" || txtPwd.Text.Trim() == "" || cboUserType.Text.Trim() == "")
{
MessageBox.Show("文本框的输入不能为空!");
return;
}
if (cboUserType.Text == "Administrator")
{
MessageBox.Show("暂不开放注册管理员功能!");
return;
}
//判断 哪些CheckBox 被选中
AdjustChecked();
//使用SQL update 更新语句
//获取文本框 和ComboBox 输入的内容, 通过用户的ID(MId) 进行更新(ID为当前鼠标点击行的MId)
string sqlUpdate = "update MovieAccount set MUserName = @MUserName, MUserPwd = @MUserPwd,UserType=@UserType,RightFManager=@RightFManager,RightFRegistration=@RightFRegistration,RightFPwdChange=@RightFPwdChange,RightFLog=@RightFLog where MId=@MId";
SqlParameter[] param ={
new SqlParameter("@MUserName",txtUserName.Text.Trim()),
new SqlParameter("@MUserPwd",txtPwd.Text.Trim()),
new SqlParameter("@UserType",cboUserType.Text.Trim()),
new SqlParameter("@RightFManager",rightFManager),
new SqlParameter("@RightFRegistration",rightFRegistration),
new SqlParameter("@RightFPwdChange",rightFPwdChange),
new SqlParameter("@RightFLog",rightFLog),
new SqlParameter("@MId",dgvUserManger.CurrentRow.Cells[0].Value),
};
//调用 SqlHelper 更新方法
int n = SqlHelper.ExcuteNonQuery(sqlUpdate, param);
//判定 如果n=0,则说明没有获取到数据,ExecuteNonQuery执行不成功
if (n == 0)
{
//提示更新失败
MessageBox.Show("更新失败!");
return;// 并且返回
}
else
{
//否则更新成功
MessageBox.Show("恭喜你!更新成功!");
}
//保存完以后 调用刷新方法,将更新后的数据 显示在datagridview上面
CheckAllUsers();
}
//删除DataGridView里 选中的用户
private void btnUserDelete_Click(object sender, EventArgs e)
{
//使用sql删除语句
string sqlDelete = null;
//如果datagridview的当前行被选中
if (dgvUserManger.CurrentRow.Selected)
{
//获取当前点中行的MID 并且 将当前行的MID号 赋给SQL 语句
sqlDelete = "delete from MovieAccount where MId=@MId";
}
SqlParameter[] param = {
new SqlParameter("@MId",Convert.ToInt32(dgvUserManger.CurrentRow.Cells[0].Value))
};
//调用 SqlHelper 删除的方法
int n = SqlHelper.ExcuteNonQuery(sqlDelete, param);
//如果n>0 说明删除数据成功
if (n > 0)
{
MessageBox.Show("删除成功!");
}
else //否则失败
{
MessageBox.Show("不存在的ID!");
}
//删除完后 刷新一下当前数据
CheckAllUsers();
}
class SqlHelper
{
static string connStr = ConfigurationManager.ConnectionStrings["str"].ConnectionString;
static SqlConnection conn = new SqlConnection(connStr);
/// <summary>
/// ExcuteNonQuery 用于执行增删改方法
/// </summary>
/// <param name="strSql">增删改Sql语句</param>
/// <param name="paras">Sql参数数组</param>
/// <returns>返回一个整数值,用于判断是否操作成功</returns>
public static int ExcuteNonQuery(string strSql, params SqlParameter[] paras)
{
SqlCommand cmd = new SqlCommand(strSql, conn); //执行sql指令 外面调用需传入2个参数 Sql查询语句和 Sql连接
cmd.Parameters.AddRange(paras); //添加 查询语句执行的参数数组
conn.Open(); //执行前 需打开数据库连接
int n = cmd.ExecuteNonQuery(); //执行 cmd指令操作 返回成功操作的行数
conn.Close(); //用完关闭数据库 节约资源
return n; //返回成功操作的行数
}
/// <summary>
/// ExecuteDataTable 用于执行 查 方法
/// </summary>
/// <param name="strSql">Sql Select语句</param>
/// <returns>返回 查询结果表</returns>
public static DataTable ExecuteDataTable(string strSql)
{
SqlCommand cmd = new SqlCommand(strSql, conn); //执行sql指令 外面调用需传入2个参数 Sql查询语句和 Sql连接
SqlDataAdapter da = new SqlDataAdapter(cmd); //使用SqlDataAdapter数据适配器来加载cmd操作指令
DataTable dt = new DataTable(); //创建 DataTable
da.Fill(dt); //将SqlDataAdapter 获取的结果集 填充到 DataTable中
return dt; //返回 DataTable
}
}
电影记录管理系统代码(笔记)
最新推荐文章于 2024-08-13 09:11:34 发布