您的位置:首页 > 数据库

C#访问数据库方法

2008-08-25 22:03 465 查看
        #region 执行查询语句返回影响行数

        public static int ExecuteNonQuery(string str_cmd,out string str_error)

        {

            int i=0;

            str_error=string.Empty;

            SqlConnection conn=CreateConn();

            SqlCommand cmd=new SqlCommand(str_cmd,conn);

            try

            {

                conn.Open();

                i=cmd.ExecuteNonQuery();

            }

            catch(Exception ex)

            {

                str_error=ex.Message;

            }

            finally

            {

                conn.Close();

            }

            return i;

        }

        #endregion

        #region 返回第一行第一列

        public static string ExecuteScalar(string str_cmd,out string str_error)

        {

            string str_value=string.Empty;

            str_error=string.Empty;

            SqlConnection conn=CreateConn();

            SqlCommand cmd=new SqlCommand(str_cmd,conn);

            try

            {

                conn.Open();

                str_value=cmd.ExecuteScalar().ToString();

            }

            catch(Exception ex)

            {

                str_error=ex.Message;

            }

            finally

            {

                conn.Close();

            }

            return str_value;

        }

        #endregion

        #region 返回datatbale from datareader

        public static DataTable ExecuteReader(string str_cmd,out string str_error)

        {

            DataTable dt=new DataTable();

            SqlDataReader dr=null;

             str_error=string.Empty;

            SqlConnection conn=CreateConn();

            SqlCommand cmd=new SqlCommand(str_cmd,conn);

            try

            {

                conn.Open();

                dr=cmd.ExecuteReader();

                dt=DataReaderToTable(dr);

            }

            catch(Exception ex)

            {

                str_error=ex.Message;

            }

            finally

            {

                conn.Close();

            }

            return dt;

         }

        #region 循环SqlDataReader填入Table

        private static DataTable DataReaderToTable(SqlDataReader dr)

        {

            DataTable dt=new DataTable();

            int count=dr.FieldCount;

            int index=1;

            if(count>0)

            {

                for(int i=0;i
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: