学习笔记之前端界面操作数据表

用户管理

功能:修改用户登录密码

操作说明:输入用户名、原来密码、新密码和确认密码后,单击“确定”完成修改密码的操作。若原用户密码不对, 系统会提示重新输入。

知识点描述

使用的控件:Text文本框(更新命令按钮)

                     GradView框(允许对用户进行增、删、改、查操作)

                     MessageBox消息提示框(更新提示)

使用说明:管理员通过后台可有修改用户密码和姓名权限,

                  可直接编辑行进行增加、删除

思维导图

界面加载

private void 用户管理_Load(object sender, EventArgs e)

        {

            SqlConnection sqlConnection = new SqlConnection();                                              //声明并实例化SQL连接;

            sqlConnection.ConnectionString =

                "Server=(local);Database=病区管理;Integrated Security=sspi";                             //在字符串变量中,描述连接字符串所需的服务器地址、数据库名称、集成安全性(即是否使用Windows验证);

            SqlCommand sqlCommand = new SqlCommand();

            sqlCommand.Connection = sqlConnection;                                                          //将SQL命令的连接属性指向SQL连接;

            sqlCommand.CommandText = "SELECT * FROM operator;";                                            //指定SQL命令的命令文本;该命令查询所有班级,以用作下拉框数据源;

            SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();                                           //声明并实例化SQL数据适配器;

            sqlDataAdapter.SelectCommand = sqlCommand;                                                      //将SQL数据适配器的查询命令属性指向SQL命令;

            DataTable operatorTable = new DataTable();                                                         //声明并实例化数据表,用于保存所有班级,以用作下拉框数据源;

            sqlConnection.Open();                                                                           //打开SQL连接;

            sqlDataAdapter.Fill(operatorTable);                                                                //SQL数据适配器读取数据,并填充班级数据表;

            sqlConnection.Close();                                                                          //关闭SQL连接;

            this.dg_用户管理.Columns.Clear();                                                                 //数据网格视图的列集合清空;

            this.dg_用户管理.DataSource = operatorTable;                                                       //将数据网格视图的数据源设为学生数据表;

            this.dg_用户管理.Columns["op_id"].HeaderText = "账号";                                               //将数据网格视图的指定列的表头文本设为中文;

            this.dg_用户管理.Columns["op_name"].HeaderText = "姓名";

            this.dg_用户管理.Columns["op_pass"].HeaderText = "密码";

            this.dg_用户管理.Columns[this.dg_用户管理.Columns.Count - 1].AutoSizeMode =                         //数据网格视图的最后一列的自动调整列宽模式设为填充(至数据网格视图右侧边缘);

                DataGridViewAutoSizeColumnMode.Fill;

       }

数据更新

private void bt_更新_Click(object sender, EventArgs e)

        {

            SqlConnection sqlConnection = new SqlConnection();                                              //声明并实例化SQL连接;

            sqlConnection.ConnectionString =

                "Server=(local);Database=病区管理;Integrated Security=sspi";                             //在字符串变量中,描述连接字符串所需的服务器地址、数据库名称、集成安全性(即是否使用Windows验证);

            SqlCommand insertCommand = new SqlCommand();                                                    //声明并实例化SQL命令;该命令用于插入记录;

            insertCommand.Connection = sqlConnection;                                                       //将SQL命令的连接属性指向SQL连接;

            insertCommand.CommandText =                                                                     //指定SQL命令的命令文本;

                "INSERT operator"

                + "(op_id,op_pass,op_name)"

                + " VALUES(@op_id,@op_pass,@op_name);";

            insertCommand.Parameters.Add("@op_id", SqlDbType.Char, 10, "op_id");                                  //向SQL命令的参数集合添加参数的名称、SQL Server数据类型、长度(仅用于定长类型)、所绑定的数据表中的列名;

            insertCommand.Parameters.Add("@op_pass", SqlDbType.VarChar, 0, "op_pass");

            insertCommand.Parameters.Add("@op_name", SqlDbType.VarChar, 0, "op_name");

            SqlCommand updateCommand = new SqlCommand();                                                    //声明并实例化SQL命令;该命令用于更新记录;

            updateCommand.Connection = sqlConnection;                                                       //将SQL命令的连接属性指向SQL连接;

            updateCommand.CommandText =                                                                     //指定SQL命令的命令文本;

                "UPDATE operator"

                + " SET op_id=@op_id,op_name=@op_name,op_pass=@op_pass"

                + " WHERE op_id=@Oldop_id;";

            updateCommand.Parameters.Add("@op_id", SqlDbType.Char, 10, "op_id");                               //向SQL命令的参数集合添加参数的名称、SQL Server数据类型、长度(仅用于定长类型)、所绑定的数据表中的列名;

            updateCommand.Parameters.Add("@op_name", SqlDbType.VarChar, 0, "op_name");

            updateCommand.Parameters.Add("@op_pass", SqlDbType.VarChar, 0, "op_pass");

            updateCommand.Parameters.Add("@Oldop_id", SqlDbType.Char, 10, "op_id");                               //若学号发生更改,则还需提供旧学号,以便查询要更改的行;

            updateCommand.Parameters["@Oldop_id"].SourceVersion = DataRowVersion.Original;                     //旧学号的来源版本,为数据行版本中的原始值;

            SqlCommand deleteCommand = new SqlCommand();                                                    //声明并实例化SQL命令;该命令用于删除;

            deleteCommand.Connection = sqlConnection;                                                       //将SQL命令的连接属性指向SQL连接;

            deleteCommand.CommandText =                                                                     //指定SQL命令的命令文本;

                "DELETE operator"

                + " WHERE op_id=@op_id;";

            deleteCommand.Parameters.Add("@op_id", SqlDbType.Char, 10, "op_id");

            SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();                                           //声明并实例化SQL数据适配器;

            sqlDataAdapter.InsertCommand = insertCommand;                                                   //将SQL数据适配器的属性InsertCommand指向用于插入记录的SQL命令;

            sqlDataAdapter.UpdateCommand = updateCommand;                                                   //将SQL数据适配器的属性UpdateCommand指向用于更新记录的SQL命令;

            sqlDataAdapter.DeleteCommand = deleteCommand;                                                   //将SQL数据适配器的属性DeleteCommand指向用于删除记录的SQL命令;

            DataTable operatorTable1 = (DataTable)this.dg_用户管理.DataSource;                                 //声明数据表,并指向数据网格视图的数据源;数据源默认类型为object,还需强制转换类型;

            sqlConnection.Open();                                                                           //打开SQL连接;

            int rowAffected = sqlDataAdapter.Update(operatorTable1);                                         //SQL数据适配器根据学生数据表提交所有更新,并返回受影响行数;

            sqlConnection.Close();                                                                          //关闭SQL连接;

            MessageBox.Show("修改成功" + rowAffected.ToString() + "记录"); 

        }

截图

 

 

 

posted @ 2018-10-24 23:44  Hu-Fan  阅读(270)  评论(0编辑  收藏  举报