注册 登录
编程论坛 ASP.NET技术论坛

编写数据库增、删、改操作方法

oldhouse66 发布于 2014-05-22 11:24, 1837 次点击
2. 编写数据库增、删、改操作方法
2.1 Command对象
我们知道了Connection对象负责连接数据库,那么数据库连接成功以后应用程序如何把SQL语句提交给数据库呢?这就是我们需要学习的Command对象,它能够完成所有的任务。
(1)Command对象的作用:封装“连接对象”和要执行的“SQL语句”;对数据库执行具体的操作,提供 “增、删、改、查” 的方法。
(2)Command对象的属性:
CommandText:需要封装的Sql语句或存储过程名称。
Connection:Command对象使用的数据库连接对象。
(3)Command对象的方法:
ExecuteNonQuery()执行增、删、改操作。
ExecuteScalar()返回单一结果的查询。
ExecuteReader()返回只读数据列表的查询。
2.2 执行增、删、改操作
(1)应用程序提交数据更新的过程我们通过如下图来说明:
 
只有本站会员才能查看附件,请 登录

(2)ExecuteNonQuery()方法使用要点:该方法执行insert、update、delete类型的语句。执行后返回受影响的行数,一般是大于0的整数,等于0说明没有影响, -1表示执行出现错误。该方法的具体应用如下: (参考示例2:添加学员对象)
 
只有本站会员才能查看附件,请 登录

(参考示例3:修改学员对象)
 
只有本站会员才能查看附件,请 登录

(参考示例4:删除学员对象)
   
只有本站会员才能查看附件,请 登录

(3)执行增、删、改步骤总结。请学员务必记住如下步骤:
    创建Connection对象。
    组合 sql 语句insert、update、delete。
    创建 Command 对象,并封装Connection和Sql语句。
    打开连接。
    执行 ExecuteNonQuery() 方法,返回受影响的行数。
    关闭连接。
【本次讲解结束】以上内容如有疑问欢迎加入C#学习指导群(375023963)和大家一起交流学习问题。后面我们继续给大家讲解“提交多条更新的SQL语句的方法”。【本文属原创文章,如转载请注明:http://www.
2 回复
#2
zp9982014-06-12 15:02
看不懂。慢慢看了。
#3
Issac_abc2014-07-02 14:42
刚开始都是这样的,慢慢的都看懂了,下买贴了简单的增、删、改 查操作方法

程序代码:


 //得到所有用户列表
        public IList<Users> getAllUsers()
        {
            string sql = "select users.*,u.unitName,R.* from Users as users left join Unit as u on users.unitId = u.id left join Roles R on users.roleId = R.id";
            IList<Users> list = new List<Users>();
            using (SqlDataReader reader = DBHelper.ExecuteReader(sql))
            {
                while (reader.Read())
                {
                    Users model = new Users();
                    model.Id = Convert.ToInt32(reader["Id"]);
                    model.Account = reader["Account"].ToString();
                    model.Password = reader["Password"].ToString();
                    model.Username = reader["Username"].ToString();
                    model.Telephone = reader["Telephone"].ToString();
                    model.Unitid = Convert.ToInt32(reader["unitId"]);
                    model.Roleid = (int)reader["Roleid"];

                    Unit unit = new Unit();
                    unit.UnitName = reader["unitName"].ToString();
                    model.Unit = unit;

                    Roles role = new Roles();
                    role.Role = reader["role"].ToString();
                    role.Power = reader["power"].ToString();
                    model.Role = role;

                    list.Add(model);

                }
            }
            return list;
        }
/// <summary>
     
/// 添加用户
     
/// </summary>
     
/// <param name="user"></param>
     
/// <returns></returns>
            public int AddUser(Users user)
            {
                string sql =
                    "insert into Users (account, password, username, telephone, unitid, roleid)" +
                    " values (@account, @password, @username, @telephone, @unitid, @roleid)";
                sql += " ; SELECT @@IDENTITY";

                SqlParameter[] para = new SqlParameter[]
                {
                    new SqlParameter("@account", user.Account),   
                    new SqlParameter("@password", user.Password),     
                    new SqlParameter("@username", user.Username),
                    new SqlParameter("@telephone", user.Telephone),
                    new SqlParameter("@unitid", user.Unit),
                    new SqlParameter("@roleid", user.Roleid)
                };
                int newId = 0;
                newId = DBHelper.ExecuteScalar(sql, para);
                return newId;
            }

 /// <summary>
            
/// 更新密码
            
/// </summary>
            public int UpdatePwd(int id, string pwd)
            {
                string strsql = "update users set password='" + pwd + "' where id= " + id;
                              
                int i = Convert.ToInt32(DBHelper.ExecuteCommand(strsql.ToString()));

                return i;
               
            }
  //根据用户id 删除用户
            public int DeleteUser(int id)
            {
                string sql = "delete from users where id=" + id;
                int newId = 0;
                newId = DBHelper.ExecuteScalar(sql);
                return newId;
            }
1