Fork me on GitHub

DBHelper

private static string constr = "server=.;database=student;uid=sa;pwd=*****";//连接数据库
        public static int ExecuteNonQuery(string sql)//增删改
        {
            SqlConnection con = new SqlConnection(constr);//连接字符串
            con.Open();//打开数据库
            SqlCommand cmd = new SqlCommand(sql, con);//执行sql语句
            int h = cmd.ExecuteNonQuery();//执行之后接收返回的行数
            con.Close();//关闭数据库
            return h;//将行数返回回去
        }
        public static DataTable executeQuery(string sql) //查询
        {
            SqlConnection con = new SqlConnection(constr);//连接字符串
            con.Open();//打开数据库
            SqlDataAdapter dap = new SqlDataAdapter(sql,con);//执行语句
            DataTable dt = new DataTable();//创建保存数据的对象
            dap.Fill(dt);//将执行后的数据填充到dt
            con.Close();//关闭数据库
            return dt;//将数据返回回去

        }


        /// <summary>
        /// 执行存储过程
        /// </summary>
        /// <param name="procname">存储过程名</param>
        /// <param name="pageindex">当前页码</param>
        /// <param name="pagesize">每页行数</param>
        /// <param name="pagecount">总行数</param>
        /// <returns>数据记录</returns>
        public static DataTable executeProcdure(string procname, int pageindex, int pagesize, out int pagecount) 
        {//调用其他存储过程主要要考虑到返回类型以及传入参数
            SqlConnection sqlconn = new SqlConnection(constr);
            sqlconn.Open();

            SqlCommand sqlCmd = new SqlCommand(procname, sqlconn);
            //指明当前的command对象类型是一个存储过程类型
            sqlCmd.CommandType = CommandType.StoredProcedure;  

            //给存储过程指定参数1
            SqlParameter param1 = new SqlParameter("@pageindex", SqlDbType.Int);
            //给输入参数绑定值
            param1.Value = pageindex;
            //将该参数添加到SqlCommand对象中
            sqlCmd.Parameters.Add(param1);

            //给存储过程指定参数2
            SqlParameter param2 = new SqlParameter("@pagesize", SqlDbType.Int);
            //给输入参数绑定值
            param2.Value = pagesize;
            //将该参数添加到SqlCommand对象中
            sqlCmd.Parameters.Add(param2);

            //给存储过程指定参数3
            SqlParameter param3 = new SqlParameter("@pagecount", SqlDbType.Int);
            //指明该参数为一个输出参数
            param3.Direction = ParameterDirection.Output;
            sqlCmd.Parameters.Add(param3);

            DataTable dt = new DataTable();
            SqlDataAdapter sda = new SqlDataAdapter(sqlCmd);
            sda.Fill(dt);

            //获取存储过程输出参数值
            pagecount = int.Parse(sqlCmd.Parameters["@pagecount"].Value.ToString());
            sqlconn.Close();

            return dt;
        }

 

 

 

posted @ 2017-07-06 20:44  都一样*  阅读(188)  评论(0编辑  收藏  举报