zoukankan      html  css  js  c++  java
  • .net 数据库操作

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;


    namespace DB
    {
        public class DataAccess
        {
            public string connectstring = System.Configuration.ConfigurationSettings.AppSettings["MyConnectionString"].ToString();
            //public string connectstring = ConfigurationManager.ConnectionStrings["MyConnectionString"].ToString();
            private SqlConnection cn;
            private SqlDataAdapter sda;
            private SqlDataReader sdr;
            private SqlCommand cmd;
            private DataSet ds;
            private DataView dv;

            /// <summary>
            /// 打开数据库连接
            /// </summary>
            public void Open()
            {
                #region
                cn = new SqlConnection(connectstring);
                cn.Open();
                #endregion
            }


            /// <summary>
            /// 关闭数据库连接
            /// </summary>
            public void Close()
            {
                #region
                if (cn != null)
                {
                    cn.Close();
                    cn.Dispose();
                }
                #endregion
            }


            /// <summary>
            /// 返回DataSet数据集 错误返回null
            /// </summary>
            /// <param name="strSql">SQL语句</param>
            public DataSet GetDs(string strSql)
            {
                #region
                Open();
                try
                {
                    sda = new SqlDataAdapter(strSql, cn);
                    ds = new DataSet();
                    sda.Fill(ds);
                    return ds;
                }
                catch
                {
                    return null;
                }
                finally {
                    Close();
                }
                
                #endregion
            }

            /// <summary>
            /// 添加DataSet表 无返回
            /// </summary>
            /// <param name="ds">DataSet对象</param>
            /// <param name="strSql">Sql语句</param>
            /// <param name="strTableName">表名</param>
            public void GetDs(DataSet ds, string strSql, string strTableName)
            {
                #region
                Open();
                try
                {
                    sda = new SqlDataAdapter(strSql, cn);
                    sda.Fill(ds, strTableName);
                }
                catch { 
                }
                Close();
                #endregion
            }


            /// <summary>
            /// 返回DataView数据视图
            /// </summary>
            /// <param name="strSql">Sql语句</param>
            public DataView GetDv(string strSql)
            {
                #region
                dv = GetDs(strSql).Tables[0].DefaultView;
                return dv;
                #endregion
            }

            /// <summary>
            /// 获得DataTable对象 错误返回空
            /// </summary>
            /// <param name="strSql">SQL语句</param>
            /// <returns></returns>
            public DataTable GetTable(string strSql)
            {
                #region
                try
                {
                    return GetDs(strSql).Tables[0];
                }
                catch {
                    return null;
                }
                #endregion
            }

            /// <summary>
            /// 获得一行数据(SqlDataReader) 出错抛出错误
            /// </summary>
            /// <param name="strSql">sql语句</param>
            /// <returns></returns>
            public SqlDataReader GetDataReader(string strSql)
            {
                #region
                Open();
                try{
                    cmd = new SqlCommand(strSql, cn);
                    sdr = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
                    return sdr;
                }
                catch (Exception ex){
                    throw (ex);
                }
                finally {
                    Close();
                }
                #endregion
            }

            /// <summary>
            /// 返回DataAdapter 出错抛出错误
            /// </summary>
            /// <param name="strSql"></param>
            /// <returns></returns>
            public SqlDataAdapter GetDataAdapter(string strSql)
            {
                #region
                Open();
                try
                {
                    return new SqlDataAdapter(strSql, cn);
                }
                catch (Exception ex)
                {
                    throw (ex);
                }
                finally {
                    Close();
                }
                #endregion
            }

            /// <summary>
            /// 获得单个记录(object) 出错抛出错误
            /// </summary>
            /// <param name="strSql">sql语句</param>
            /// <returns></returns>
            public object GetSingeData(string strSql)
            {
                #region
                Open();
                try
                {
                    cmd = new SqlCommand(strSql, cn);
                    return cmd.ExecuteScalar();
                }
                catch (Exception ex)
                {
                    throw (ex);
                }
                finally
                {
                    Close();
                }
                #endregion
            }

            /// <summary>
            /// 执行Sql语句 无返回值
            /// </summary>
            /// <param name="strSql"></param>
            public void RunSql(string strSql)
            {
                #region
                Open();
                try
                {
                    cmd = new SqlCommand(strSql, cn);
                    cmd.ExecuteNonQuery();
                }
                catch
                {
                }
                finally {
                    Close();
                }
                
                #endregion
            }

            /// <summary>
            /// 执行SQL语句,并返回第一行第一列结果的字符串 出错返回空
            /// </summary>
            /// <param name="strSql">SQL语句</param>
            /// <returns></returns>
            public string RunSqlReturn(string strSql)
            {
                #region
                string strReturn = "";
                Open();
                try
                {
                    cmd = new SqlCommand(strSql, cn);
                    strReturn = cmd.ExecuteScalar().ToString();
                }
                catch 
                {
                    strReturn = null;
                }
                Close();
                return strReturn;
                #endregion
            }

            /// <summary>
            /// 执行SQL语句,并返回name字段的结果集合 出错返回空
            /// </summary>
            /// <param name="strSql">SQL语句</param>
            /// <param name="name">字段名</param>
            /// <returns></returns>
            public List<string>  RunSqlReturn(string strSql,string name )
            {
                #region
                List<string> strReturn = new List<string>();
                Open();
                try
                {
                    cmd = new SqlCommand(strSql, cn);
                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        strReturn.Add(reader[name] as string);
                    }
                }
                catch
                {
                    strReturn = null;
                }
                Close();
                return strReturn;
                #endregion
            }


            /// <summary>
            /// 未知
            /// </summary>
            /// <param name="dataTable"></param>
            /// <param name="size"></param>
            public void UpdateChange(DataTable dataTable, Int32 size)
            {
                Open();
                SqlDataAdapter sda = new SqlDataAdapter();
                sda.UpdateCommand = new SqlCommand("update agenda set sortId=@sortId where Id=@Id", cn);
                sda.UpdateCommand.Parameters.Add("@sortId", SqlDbType.Int, 4, "sortId");
                sda.UpdateCommand.Parameters.Add("@ID", SqlDbType.Int, 4, "ID");

                sda.UpdateCommand.UpdatedRowSource = UpdateRowSource.None;
                sda.UpdateBatchSize = size;
                sda.Update(dataTable);
            }

            /// <summary>
            /// 通过command对象执行DML语句,主要完成删除,添加和修改
            /// </summary>
            /// <param name="sqlstr"></param>
            /// <returns></returns>
            public bool execmdnonqy(string strSql)
            {
                Open();
                try
                {
                    cmd = new SqlCommand(strSql, cn);
                    cmd.ExecuteNonQuery();
                    return true;
                }
                catch
                {
                    return false;
                }
                finally {
                    Close();
                }
                
            }
        }
    }

  • 相关阅读:
    跟着我学习-python-01-流程控制语句
    跟着我学习-python-01-用户交互
    跟着我学习-python-02-while循环
    基于Centos7.6上Ambari2.7.4+HDP3.1.4离线安装
    TDH(Transwarp Data Hub)社区版安装教程
    跟我学习日常写的shell脚本-设置系统selinux
    [Linux]常用命令“ll”失效或命令未找到
    NPOI
    Linq&lamda相关
    接口相关
  • 原文地址:https://www.cnblogs.com/zhihaowang/p/10128353.html
Copyright © 2011-2022 走看看