有关于用存储过程去写DAL层

刚刚在数据库中我们创建了关于存储过程的整删改查,现在根据我们的数据库写一下数据访问层

 public int AddBiao(biao b)   //添加方法
        {
            int result = 0;        //定义一个变量赋初值为0
            using (SqlConnection scon = new SqlConnection("Server=.;uid=sa;pwd=1234;database=keou")) //通过连接数据库对其进行访问
            {
                SqlCommand scom = new SqlCommand("P_TIAN ", scon);      //通过命令对象获取到相对应的存储过程名
                scom.CommandType = System.Data.CommandType.StoredProcedure;      //通过改语句访问存储过程名称
                scom.Parameters.Add(new SqlParameter("@name", b.name));  //获取参数集合
                scom.Parameters.Add(new SqlParameter("@age", b.age));
                scom.Parameters.Add(new SqlParameter("@sex", b.Sex));
                scom.Parameters.Add(new SqlParameter("@Hobby", b.Hobby));
                scom.Parameters.Add(new SqlParameter("@Beizhu",b.Beizhu));
                scon.Open();         //打开数据库连接
                result = scom.ExecuteNonQuery();         //获取值
                scon.Close();                //关闭数据库连接
            }
            return result;            //并将结果返回给之前定义的变量
        }

        public List<biao> GetBiao()   //显示
        {
            List<biao> list = new List<biao>();     //定义一个变量list
            using (SqlConnection scon = new SqlConnection("Server=.;uid=sa;pwd=1234;database=keou")) //通过连接数据库对其进行访问
            {
                SqlCommand scom = new SqlCommand("P_show",scon);               //通过命令对象获取到相对应的存储过程名
                scom.CommandType = System.Data.CommandType.StoredProcedure;      //通过改语句访问存储过程名称
                scon.Open();
                SqlDataReader reader = scom.ExecuteReader();     //从数据库读取数据
                while (reader.Read())                    //利用while循环读取每条数据
                {
                    biao b = new biao();
                    b.id = (int)reader["id"];
                    b.name = (string)reader["name"];
                    b.age = (int)reader["age"];
                    b.Sex = (bool)reader["Sex"];
                    b.Hobby = (string)reader["Hobby"];
                    b.Beizhu = (string)reader["Beizhu"];
                    list.Add(b);
                }
                reader.Close();         
                scon.Close();           //关闭数据库连接
            }
            return list;            //并将结果返回给之前定义的变量
        }

        public int  DelBiao(int id)   //添加方法
        {
            int result = 0;        //定义一个变量赋初值为0
            using (SqlConnection scon = new SqlConnection("Server=.;uid=sa;pwd=1234;database=keou")) //通过连接数据库对其进行访问
            {
                SqlCommand scom = new SqlCommand("P_delete", scon);      //通过命令对象获取到相对应的存储过程名
                scom.CommandType = System.Data.CommandType.StoredProcedure;      //通过改语句访问存储过程名称
                scom.Parameters.Add(new SqlParameter("@id", id));  //获取删除的id
                scon.Open();         //打开数据库连接
                result = scom.ExecuteNonQuery();         //获取值
                scon.Close();                //关闭数据库连接
            }
            return result;            //并将结果返回给之前定义的变量
        }

        public int UpdateBiao(biao b)   //添加方法
        {
            int result = 0;        //定义一个变量赋初值为0
            using (SqlConnection scon = new SqlConnection("Server=.;uid=sa;pwd=1234;database=keou")) //通过连接数据库对其进行访问
            {
                SqlCommand scom = new SqlCommand("P_update", scon);      //通过命令对象获取到相对应的存储过程名
                scom.CommandType = System.Data.CommandType.StoredProcedure;      //通过改语句访问存储过程名称
                scom.Parameters.Add(new SqlParameter("@id", b.id));   //获取参数集合
                scom.Parameters.Add(new SqlParameter("@name", b.name));  
                scom.Parameters.Add(new SqlParameter("@age", b.age));
                scom.Parameters.Add(new SqlParameter("@sex", b.Sex));
                scom.Parameters.Add(new SqlParameter("@Hobby", b.Hobby));
                scom.Parameters.Add(new SqlParameter("@Beizhu", b.Beizhu));
                scon.Open();         //打开数据库连接
                result = scom.ExecuteNonQuery();         //获取值
                scon.Close();                //关闭数据库连接
            }
            return result;            //并将结果返回给之前定义的变量
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章