c#安全连接mysql数据库类库 -> 传参直接获取mysql结果

c#Form 安全连接mysql数据库类库 -> 传参直接获取mysql结果

下载地址 - 公共类库,中间包含全部代码(DocTools)
https://download.csdn.net/download/yqrycz8ye/10763905
自己的使用经验–>保存

调用方法

String Q0r = DocTools.Decode_.JieMiRSADecrypt(DocTools.Web_.WebYuanMa_Utf8("网页源码-->存放ip地址"));
String phM = DocTools.Decode_.JieMiRSADecrypt(DocTools.Web_.WebYuanMa_Utf8("网页源码-->存放sql帐户地址"));
String J7n = DocTools.Decode_.JieMiRSADecrypt(DocTools.Web_.WebYuanMa_Utf8("网页源码-->存放sql密码地址"));
String Rb8 = DocTools.Decode_.JieMiRSADecrypt(DocTools.Web_.WebYuanMa_Utf8("网页源码-->存放库名地址"));
                
//赋值后,就可以直接使用sql语句了
DocTools.MySql_.Ins.MySql_Ljq = "server=" + Q0r + "; user id=" + phM + "; password=" + J7n + "; database=" + Rb8 + "; SslMode = none";

//输出看看对不对
Console.WriteLine(DocTools.MySql_.Ins.MySql_Ljq);

类库


        /*   MySql_.Ins.MySql_Ljq   */
        #region 单例模式 - 赋值连接MySql方式 
        /*** --- MySql_.Ins.MySql_Ljq = "server=" + sqlip + "; user id=" + sqlid + "; password=" + sqlmm + "; database=" + sqlkm;  ---***/

        /// <summary>
        /// 定义一个静态变量来保存类的实例
        /// </summary>
        private string MySql_ljq;

        /// <summary>
        /// 赋值方式
        /// </summary>
        public String MySql_Ljq
        {
            get { return this.MySql_ljq; }
            set { this.MySql_ljq = value; }
        }


        /// <summary>
        /// 定义私有构造函数,使外界不能创建该类实例
        /// </summary>
        private MySql_() { }


        /// <summary>
        /// 定义一个静态变量来保存类的实例
        /// </summary>
        private static MySql_ _instance = null;



        /// <summary>
        /// 定义公有方法提供一个全局访问点,同时你也可以定义公有属性来提供全局访问点
        /// </summary>
        public static MySql_ Ins
        {
            get { if (_instance == null) { _instance = new MySql_(); } return _instance; }
        }

        #endregion


        #region 常用MySQL操作类库 - (全部测试可用)

        #region 查询语句 - ExecuteDataSet(返回DataSet对象)  推荐使用->相当于数据库
        /*1.创建-->List<MySqlParameter> Paramter = new List<MySqlParameter>(); 2.传递参数Paramter.ToArray()*/
        /// <summary>
        /// 获得多个结果集,返回DataSet对象。List《MySqlParameter》 Paramter = new List《MySqlParameter》();
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>查到数据就返回 DataSet结果集</returns>
        public DataSet ExecuteDataSet(string SQLString, params MySqlParameter[] paras)
        {
            //先判断传递的sql语句是否为空.,如果为空,直接返回. 避免执行异常
            if (DocTools.Verify_.IsNull(SQLString) == false)
            {
                // 创建MySqlConnection对象,用于连接数据库..--> 传递参数 连接信息
                using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    try
                    {
                        //数据适配器
                        MySqlDataAdapter sqlda = new MySqlDataAdapter(SQLString, con);
                        sqlda.SelectCommand.Parameters.AddRange(paras);
                        DataSet ds = new DataSet();
                        int s = sqlda.Fill(ds);
                        if (s > 0)
                        {
                            return ds;  //查到数据就返回 DataSet结果集
                        }
                        else
                        {
                            return null;    //没有查到数据,返回null 。 调用时先判断结果是否为空, 防止报错
                        }
                        //不需要打开和关闭链接.
                    }
                    catch (MySql.Data.MySqlClient.MySqlException e)
                    {
                        con.Close();
                        throw e;
                    }
                    finally
                    {
                        //判断MySQL是否关闭,如果未关闭,进行关闭
                        if (con != null)
                        {
                            con.Close();
                            Console.WriteLine("结果集已返回-->关闭连接:ExecuteDataSet");
                        }
                        else Console.WriteLine("已关闭:ExecuteDataSet");
                    }

                }
            }
            //传递的sql语句是中,所以直接返回null
            else return null;
        }

        #region 多名
        /*1.创建-->List<MySqlParameter> Paramter = new List<MySqlParameter>(); 2.传递参数Paramter.ToArray()*/
        /// <summary>
        /// 获得多个结果集,返回DataSet对象。List《MySqlParameter》 Paramter = new List《MySqlParameter》();
        /// </summary>
        /// <param name="sql">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>查到数据就返回 DataSet结果集</returns>
        public DataSet ChaXunDataSet(string sql, params MySqlParameter[] paras)
        {
            return ExecuteDataSet(sql, paras);
        }
        #endregion

        #endregion

        #region 查询语句 - ExecuteDataTable(返回DataTable对象)   推荐使用->相当于数据表
        /*1.创建-->List<MySqlParameter> Paramter = new List<MySqlParameter>(); 2.传递参数Paramter.ToArray()*/
        /// <summary>
        /// 获得单个结果集,返回DataTable对象。List《MySqlParameter》 Paramter = new List《MySqlParameter》();
        /// </summary>
        /// <param name="SQLString">传递参数  -->  sql语句</param>
        /// <param name="paras">传递参数  -->  Paramter.ToArray()</param>
        /// <returns>查到数据就返回 DataTable结果集</returns>
        public DataTable ExecuteDataTable(string SQLString, params MySqlParameter[] paras)
        {
            //先判断传递的sql语句是否为空.,如果为空,直接返回. 避免执行异常
            if (DocTools.Verify_.IsNull(SQLString) == false)
            {
                // 创建MySqlConnection对象,用于连接数据库..--> 传递参数 连接信息
                using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    try
                    {
                        //数据适配器
                        MySqlDataAdapter sqlda = new MySqlDataAdapter(SQLString, con);
                        sqlda.SelectCommand.Parameters.AddRange(paras);
                        DataTable dt = new DataTable();
                        int s = sqlda.Fill(dt);
                        if (s > 0)
                        {
                            return dt;  //查到数据就返回 Table结果集
                        }
                        else
                        {
                            return null;    //没有查到数据,返回null 。 调用时先判断结果是否为空, 防止报错
                        }
                        //不需要打开和关闭链接.
                    }
                    catch (MySql.Data.MySqlClient.MySqlException e)
                    {
                        con.Close();
                        throw e;
                    }
                    finally
                    {
                        //判断MySQL是否关闭,如果未关闭,进行关闭
                        if (con != null)
                        {
                            con.Close();
                            Console.WriteLine("结果集已返回-->关闭连接:ExecuteDataTable");
                        }
                        else Console.WriteLine("已关闭:ExecuteDataTable");
                    }

                }
            }
            //传递的sql语句是空,所以直接返回null
            else return null;
        }

        #region 多名
        /*1.创建-->List<MySqlParameter> Paramter = new List<MySqlParameter>(); 2.传递参数Paramter.ToArray()*/
        /// <summary>
        /// 获得单个结果集,返回DataTable对象。List《MySqlParameter》 Paramter = new List《MySqlParameter》();
        /// </summary>
        /// <param name="sql">传递参数  -->  sql语句</param>
        /// <param name="paras">传递参数  -->  Paramter.ToArray()</param>
        /// <returns>查到数据就返回 DataTable结果集</returns>
        public DataTable ChaXunDataTable(string sql, params MySqlParameter[] paras)
        {
            return ExecuteDataTable(sql, paras);
        }
        #endregion


        #endregion

        #region 查询语句 - ExecuteScalar(返回object一条数据) 一般用于查询数据数量
        /*
        * 调用案例:String insert1 = @"SELECT qq FROM `B_fuzhu_id` where qq is not null";  --》 qq字段不是null的输出一条 -->null是值
        * 调用案例:String insert2 = @"SELECT qq FROM `B_fuzhu_id` where qq!=''";   --》  qq字段不是''的输出一条      --> ''是字符串空
        * 调用案例:String insert3 = @"select account,phone from `B_fuzhu_id` where xh>6";  --》  序号大于+的 帐户输出一条
        * 调用案例:String insert4 = @"SELECT COUNT(xh) FROM `B_fuzhu_id`";   --》   xh一共有多少条数据
        * 会忽略列值为NULL的记录(不包括空字符串和0),即列值为NULL的记录不统计在内。
        * 调用案例:String insert5 = @"SELECT COUNT(*) FROM `B_fuzhu_id` where qq=''"; 统计qq是空的有多少条数据
        */
        /// <summary>
        /// 执行一条计算查询结果语句,返回查询结果(object) --->只有一条结果. 一般用于查询数量
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回 object结果 -- 只有一条结果 可以转String</returns>
        public object ExecuteScalar(string SQLString, params MySqlParameter[] paras)
        {
            if (DocTools.Verify_.IsNull(SQLString) == false)
            {
                using (MySqlConnection connection = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    using (MySqlCommand cmd = new MySqlCommand(SQLString, connection))
                    {
                        try
                        {
                            connection.Open();
                            cmd.Parameters.AddRange(paras);
                            object obj = cmd.ExecuteScalar();
                            if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
                            {
                                return null;
                            }
                            else
                            {
                                return obj;
                            }
                        }
                        catch (MySql.Data.MySqlClient.MySqlException e)
                        {
                            connection.Close();
                            throw e;
                        }
                        finally
                        {
                            if (connection != null)
                            {
                                connection.Close();
                                Console.WriteLine("结果已返回-->关闭连接:ExecuteScalar");
                            }
                            else Console.WriteLine("已关闭:ExecuteScalar");
                        }
                    }
                }
            }
            else return null;
        }


        #region 多名
        /// <summary>
        /// 执行一条计算查询结果语句,返回查询结果(object) --->只有一条结果. 一般用于查询数量
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回 object结果 -- 只有一条结果 可以转String</returns>
        public object ChaXun_ShuLiang(string SQLString, params MySqlParameter[] paras)
        {
            return ExecuteScalar(SQLString, paras);
        }
        #endregion

        #endregion

        #region 执行增删改操作(返回受影响的条数(int)类型)
        /// <summary>
        /// 执行Update(更新),Delete(删除),Insert(插入)操作  返回受影响的条数(int)类型
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回受影响的条数(int)类型</returns>
        public int ExecuteNonquery(string SQLString, params MySqlParameter[] paras)
        {
            if (DocTools.Verify_.IsNull(SQLString) == false)
            {
                using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    try
                    {
                        MySqlCommand cmd = new MySqlCommand(SQLString, con);
                        cmd.Parameters.AddRange(paras);
                        con.Open();
                        return cmd.ExecuteNonQuery();
                    }
                    catch (MySql.Data.MySqlClient.MySqlException e)
                    {
                        con.Close();
                        throw e;
                    }
                    finally
                    {
                        //判断MySQL是否关闭,如果未关闭,进行关闭
                        if (con != null)
                        {
                            con.Close();
                            Console.WriteLine("结果已返回-->关闭连接:ExecuteNonquery");
                        }
                        else Console.WriteLine("已关闭:ExecuteNonquery");
                    }
                }
            }
            else return -1;
        }

        #region 多名
        /// <summary>
        /// 执行Update(更新),Delete(删除),Insert(插入)操作  返回受影响的条数(int)类型
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回受影响的条数(int)类型</returns>
        public int ZhiXing_Zen(string SQLString, params MySqlParameter[] paras)
        {
            return ExecuteNonquery(SQLString, paras);
        }
        /// <summary>
        /// 执行Update(更新),Delete(删除),Insert(插入)操作  返回受影响的条数(int)类型
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回受影响的条数(int)类型</returns>
        public int ZhiXing_Shan(string SQLString, params MySqlParameter[] paras)
        {
            return ExecuteNonquery(SQLString, paras);
        }
        /// <summary>
        /// 执行Update(更新),Delete(删除),Insert(插入)操作 返回受影响的条数(int)类型
        /// </summary>
        /// <param name="SQLString">传递参数  --》  sql语句</param>
        /// <param name="paras">传递参数  --》  Paramter.ToArray()</param>
        /// <returns>返回受影响的条数(int)类型</returns>
        public int ZhiXing_Gai(string SQLString, params MySqlParameter[] paras)
        {
            return ExecuteNonquery(SQLString, paras);
        }
        #endregion

        #endregion

        #region 存储过程 - ExecuteProcNonQuery (无返回值)
        /// <summary>
        /// 调用存储过程 无返回值
        /// </summary>
        /// <param name="procname">存储过程名</param>
        /// <param name="paras">sql语句中的参数数组</param>
        /// <returns></returns>
        public int ExecuteProcNonQuery(string procname, params MySqlParameter[] paras)
        {

            using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
            {
                try
                {
                    MySqlCommand cmd = new MySqlCommand(procname, con);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddRange(paras);
                    con.Open();
                    return cmd.ExecuteNonQuery();
                }
                catch (MySql.Data.MySqlClient.MySqlException e)
                {
                    con.Close();
                    throw e;
                }
                finally
                {
                    //判断MySQL是否关闭,如果未关闭,进行关闭
                    if (con != null)
                    {
                        con.Close();
                        Console.WriteLine("结果已返回-->关闭连接:ExecuteProcQuery");
                    }
                    else Console.WriteLine("已关闭:ExecuteProcQuery");
                }
            }
        }
        #endregion

        #region 存储过程 - ExecuteProcQuery (返回DataTable)
        /// <summary>
        /// 存储过程 返回Datatable
        /// </summary>
        /// <param name="procname">存储过程名</param>
        /// <param name="paras">sql语句中的参数数组</param>
        /// <returns>调用存储过程,返回返回Datatable</returns>
        public DataTable ExecuteProcQuery(string procname, params MySqlParameter[] paras)
        {
            if (DocTools.Verify_.IsNull(procname) == false)
            {
                using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    try
                    {
                        MySqlCommand cmd = new MySqlCommand(procname, con);
                        cmd.CommandType = CommandType.StoredProcedure;
                        MySqlDataAdapter sqlda = new MySqlDataAdapter(procname, con);
                        sqlda.SelectCommand.Parameters.AddRange(paras);
                        DataTable dt = new DataTable();
                        sqlda.Fill(dt);
                        return dt;
                    }
                    catch (MySql.Data.MySqlClient.MySqlException e)
                    {
                        con.Close();
                        throw e;
                    }
                    finally
                    {
                        //判断MySQL是否关闭,如果未关闭,进行关闭
                        if (con != null)
                        {
                            con.Close();
                            Console.WriteLine("结果已返回-->关闭连接:ExecuteProcQuery");
                        }
                        else Console.WriteLine("已关闭:ExecuteProcQuery");
                    }
                }
            }
            else
            {
                return null;
            }
        }

        #region 多名
        /// <summary>
        /// 存储过程 返回Datatable
        /// </summary>
        /// <param name="procname">存储过程名</param>
        /// <param name="paras">sql语句中的参数数组</param>
        /// <returns>调用存储过程,返回返回Datatable</returns>
        public DataTable CuCunGuoCheng(string procname, params MySqlParameter[] paras)
        {
            return ExecuteProcQuery(procname, paras);
        }
        #endregion

        #endregion

        #region 多语句的事物管理 - ExcuteCommandByTran (返回bool类型)

        /// <summary>
        /// 多语句的事物管理
        /// </summary>
        /// <param name="cmds">命令数组</param>
        /// <returns></returns>
        public bool ExcuteCommandByTran(params MySqlCommand[] cmds)
        {
            if (DocTools.Verify_.IsNull(cmds) == false)
            {
                using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
                {
                    try
                    {
                        con.Open();
                        MySqlTransaction tran = con.BeginTransaction();
                        foreach (MySqlCommand cmd in cmds)
                        {
                            cmd.Connection = con;
                            cmd.Transaction = tran;
                            cmd.ExecuteNonQuery();
                        }
                        tran.Commit();
                        return true;
                    }
                    catch (MySql.Data.MySqlClient.MySqlException e)
                    {
                        con.Close();
                        throw e;
                    }
                    finally
                    {
                        //判断MySQL是否关闭,如果未关闭,进行关闭
                        if (con != null)
                        {
                            con.Close();
                            Console.WriteLine("结果已返回-->关闭连接:ExcuteCommandByTran");
                        }
                        else Console.WriteLine("已关闭:ExcuteCommandByTran");
                    }

                }
            }
            else
            {
                return false;
            }

        }

        #endregion

        #region 分页 - ExcuteDataWithPage (返回DataTable)

        /// <summary>
        /// 分页 - ExcuteDataWithPage (返回DataTable)
        /// </summary>
        /// <param name="sql">传递参数  -->  sql语句</param>
        /// <param name="totalCount">传递参数  -->  分页</param>
        /// <param name="paras">传递参数  -->  Paramter.ToArray()</param>
        /// <returns>返回DataTable</returns>
        public DataTable ExcuteDataWithPage(string sql, ref int totalCount, params MySqlParameter[] paras)
        {
            using (MySqlConnection con = new MySqlConnection(MySql_.Ins.MySql_Ljq))
            {
                MySqlDataAdapter dap = new MySqlDataAdapter(sql, con);
                DataTable dt = new DataTable();
                dap.SelectCommand.Parameters.AddRange(paras);
                dap.Fill(dt);
                MySqlParameter ttc = dap.SelectCommand.Parameters["@totalCount"];
                if (ttc != null)
                {
                    totalCount = Convert.ToInt32(ttc.Value);
                }
                return dt;
            }
        }


        #endregion


        #endregion

以下是不需要自己写sql语句,直接传参数. 获取结果.



        #region 传参直接获取结果  ---》  获取数据库ID的最大值 - GetMaxID(返回int,最大值)
        /// <summary>
        /// 获取指定字段名的最大值(字段名+表名)
        /// </summary>
        /// <param name="TableName">表名</param>
        /// <param name="FieldName">字段名</param>
        /// <returns>返回int</returns>
        public int GetMaxID(string TableName, string FieldName)
        {
            string strsql = @"select max(" + FieldName + ") from " + TableName;
            object obj = ChaXun_ShuLiang(strsql);
            if (obj == null)
            {
                return -1;
            }
            else
            {
                return int.Parse(obj.ToString());
            }
        }

        #region 多名(最大值)
        /// <summary>
        /// 获取指定字段名的最大值(字段名+表名)
        /// </summary>
        /// <param name="TableName">表名</param>
        /// <param name="FieldName">字段名</param>
        /// <returns>返回int</returns>
        public int HuoQu_ZuiDaZhi(string TableName, string FieldName)
        {
            return GetMaxID(TableName, FieldName);
        }
        #endregion

        #endregion

        #region 传参直接获取结果  ---》  获取数据库ID的最小值 - GetMinID(返回int,最大值)
        /// <summary>
        /// 获取指定字段名的最小值(字段名+表名)
        /// </summary>
        /// <param name="TableName">表名</param>
        /// <param name="FieldName">字段名</param>
        /// <returns>返回int</returns>
        public int GetMinID(string TableName, string FieldName)
        {
            string strsql = @"select min(" + FieldName + ") from " + TableName;
            object obj = ChaXun_ShuLiang(strsql);
            if (obj == null)
            {
                return -1;
            }
            else
            {
                return int.Parse(obj.ToString());
            }
        }

        #region 多名(最小值)
        /// <summary>
        /// 获取指定字段名的最小值(字段名+表名)
        /// </summary>
        /// <param name="TableName">表名</param>
        /// <param name="FieldName">字段名</param>
        /// <returns>返回int</returns>
        public int HuoQu_ZuiXiaoZhi(string TableName, string FieldName)
        {
            return GetMinID(TableName, FieldName);
        }
        #endregion

        #endregion

        #region 传参直接获取结果  ---》  条件查询 并 获取一个字段,返回String类型
        /// <summary>
        /// 传参直接获取结果  ---》  条件查询 并 获取一个字段,返回String类型
        /// </summary>
        /// <param name="TableName">表明</param>
        /// <param name="ziduanName">字段名</param>
        /// <param name="yaochaName">匹配字段</param>
        /// <param name="pipeiName">匹配内容</param>
        /// <returns>返回String</returns>
        public String GetOneZiDuan_String(string TableName, string ziduanName, string yaochaName, string pipeiName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ziduanName + " from " + TableName + " where " + yaochaName + " = '" + pipeiName + "'";
            //执行ExecuteScalar,返回结果
            object data = DocTools.MySql_.Ins.ExecuteScalar(SqlString, Paramter.ToArray());
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return data.ToString();
            }
            else return "";
        }
        #endregion

        #region 传参直接获取结果  ---》  条件查询 并 获取一个字段,返回int类型
        /// <summary>
        /// 传参直接获取结果  ---》  条件查询 并 获取一个字段,返回int类型
        /// </summary>
        /// <param name="TableName">表明</param>
        /// <param name="ziduanName">字段名</param>
        /// <param name="yaochaName">匹配字段</param>
        /// <param name="pipeiName">匹配内容</param>
        /// <returns>返回int</returns>
        public int GetOneZiDuan_int(string TableName, string ziduanName, string yaochaName, string pipeiName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ziduanName + " from " + TableName + " where " + yaochaName + " = '" + pipeiName + "'";
            //执行ExecuteScalar,返回结果
            object data = DocTools.MySql_.Ins.ExecuteScalar(SqlString, Paramter.ToArray());
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return Convert.ToInt32(data);
            }
            else return -1;
        }
        #endregion



        #region 传参直接获取结果  ---》  查询数据库中是否存在某一个字段 -->  参数(1.表名  2.字段名  3.匹配字段)

        /// <summary>
        /// 查询数据库中是否存在某一个字段 -->  参数(1.表名  2.字段名  3.匹配字段)
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="PiPeiName">参数 --->  匹配的名字 比如帐户</param>
        /// <returns>返回false表示没找到,否则返回true已找到结果</returns>
        public bool IsString_ZiDuan(string TableName, String ziName, String PiPeiName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ziName + " from " + TableName + " where " + ziName + " = '" + PiPeiName + "'";
            //执行ExecuteScalar,返回结果
            object data = DocTools.MySql_.Ins.ExecuteScalar(SqlString, Paramter.ToArray());
            //判断结果是否为空,如果空,则返回false表示没找到,否则返回true已找到结果
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return true;
            }
            else return false;
        }

        #region 多名(IsString_ZiDuan)
        /// <summary>
        /// 查询数据库中是否存在某一个字段 -->  参数(1.表名  2.字段名  3.匹配字段)
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="PiPeiName">参数 --->  匹配的名字 比如帐户</param>
        /// <returns>返回false表示没找到,否则返回true已找到结果</returns>
        public bool ChaXun_ShiFouCunZai(string TableName, String ziName, String PiPeiName)
        {
            return IsString_ZiDuan(TableName, ziName, PiPeiName);
        }
        #endregion

        #endregion

        #region 传参直接获取结果  ---》  专用验证帐户密码,同时匹配帐户密码,返回true -->  参数(1.表名  2.段名1  3.字段2 4.匹配字段1 5.匹配字段2/// <summary>
        /// 专用验证帐户密码,同时匹配帐户密码,返回true -->  参数(1.表名  2.段名1  3.字段2 4.匹配字段1 5.匹配字段2)
        /// </summary>
        /// <param name="TableName">表明</param>
        /// <param name="ZHziduan">字段1</param>
        /// <param name="MMziduan">字段2</param>
        /// <param name="ZH">匹配字段1</param>
        /// <param name="MM">匹配字段2</param>
        /// <returns>返回true表示, 2个字段都匹配, 否则不全匹配</returns>
        public bool IsZHMM(string TableName, String ZHziduan, String MMziduan, String ZH, String MM)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select * from " + TableName + " where " + ZHziduan + " = '" + ZH + "' and " + MMziduan + " = '" + MM + "'";
            //执行ExecuteScalar,返回结果
            object data = DocTools.MySql_.Ins.ExecuteScalar(SqlString, Paramter.ToArray());
            //判断结果是否为空,如果空,则返回false表示没找到,否则返回true已找到结果
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return true;
            }
            else return false;
        }
        #endregion

        #region 传参直接获取结果  ---》  查一组数据, 需要匹配两个条件
        /// <summary>
        /// 暂时不用
        /// </summary>
        /// <param name="TableName"></param>
        /// <param name="ZHziduan"></param>
        /// <param name="MMziduan"></param>
        /// <param name="ZH"></param>
        /// <param name="MM"></param>
        /// <param name="ZiDuanFenGeFu"></param>
        /// <param name="ZuFenGeFu"></param>
        /// <param name="ALL"></param>
        /// <returns></returns>
        public String IsZHMM_temp(string TableName, String ZHziduan, String MMziduan, String ZH, String MM, String ZiDuanFenGeFu = ",", String ZuFenGeFu = "#", String ALL = "*")
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ALL + " from " + TableName + " where " + ZHziduan + " = '" + ZH + "' and " + MMziduan + " = '" + MM + "'";
            //执行ExecuteScalar,返回结果
            DataTable data = DocTools.MySql_.Ins.ExecuteDataTable(SqlString, Paramter.ToArray());
            //将数据进行转换String格式
            String res = DocTools.MySql_.Ins.ZhuanTableToString(data, ZiDuanFenGeFu, ZuFenGeFu);
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return res;
            }
            else
            {
                return null;
            }
        }
        #endregion



        #region 传参直接获取结果  ---》  查询一组数据(返回String字符串)
        /*
         * 调用示范:String  b = DocTools.MySql_.Ins.GetSqlString_Zu("B_fuzhu_id", "xh", "2","@@@","###","email,qq"); 只用邮箱和QQ两个字段,指定分隔符
         * 调用示范:String  b = DocTools.MySql_.Ins.GetSqlString_Zu("B_fuzhu_id", "account", "pppppp"); 调用帐户=pppppp的整个数据,默认分隔符
         */

        /// <summary>
        /// 传参直接获取结果  ---》  查询一组数据(返回String字符串)
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="PiPeiName">参数 --->  匹配的名字 比如帐户</param>
        /// <param name="ZiDuanFenGeFu">参数 --->  字段分隔符</param>
        /// <param name="ZuFenGeFu">参数 --->  组数据分隔符</param>
        /// <param name="ALL">参数 --->  默认调用所有数据,如果只调用某个字段,可以"id,account,password"</param>
        /// <returns>返回String类型,使用的分隔符可以传递参数指定</returns>
        public String GetSqlString_Zu(String TableName, String ziName, String PiPeiName, String ZiDuanFenGeFu = ",", String ZuFenGeFu = "#", String ALL = "*")
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ALL + " from " + TableName + " where " + ziName + " = '" + PiPeiName + "'";
            //ExecuteDataTable,返回结果
            DataTable data = DocTools.MySql_.Ins.ExecuteDataTable(SqlString, Paramter.ToArray());
            //将数据进行转换String格式
            String res = DocTools.MySql_.Ins.ZhuanTableToString(data, ZiDuanFenGeFu, ZuFenGeFu);
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return res;
            }
            else
            {
                return null;
            }
        }

        #region 多名(GetSqlString_Zu)
        /// <summary>
        /// 传参直接获取结果  ---》  查询一组数据(返回String字符串)
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="PiPeiName">参数 --->  匹配的名字 比如帐户</param>
        /// <param name="ZiDuanFenGeFu">参数 --->  字段分隔符</param>
        /// <param name="ZuFenGeFu">参数 --->  组数据分隔符</param>
        /// <param name="ALL">参数 --->  默认调用所有数据,如果只调用某个字段,可以"id,account,password"</param>
        /// <returns>返回String类型,使用的分隔符可以传递参数指定</returns>
        public String HuoQu_ShuJu_Zu(String TableName, String ziName, String PiPeiName, String ZiDuanFenGeFu = ",", String ZuFenGeFu = "#", String ALL = "*")
        {
            return GetSqlString_Zu(TableName, ziName, PiPeiName, ZiDuanFenGeFu, ZuFenGeFu, ALL);
        }

        #endregion

        #endregion

        #region 传参直接获取结果  ---》  查询一列数据(返回String字符串)
        /*
         * 调用示范:String b = DocTools.MySql_.Ins.GetSqlString_Lie("B_fuzhu_id", "password,qq,phone"); 
         * 只调密码,qq,手机的列数据,默认分隔符
         * 
         * 调用示范:String b = DocTools.MySql_.Ins.GetSqlString_Lie("B_fuzhu_id", "*","|","###"); 
         * 调用所有数据列,使用"|"分割字段,使用"###"分割每组数据
         */
        /// <summary>
        /// 传参直接获取结果  ---》  查询一列数据(返回String字符串)
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ListName">参数 --->  字段名 比如id</param>
        /// <param name="ZiDuanFenGeFu">参数 --->  字段分隔符</param>
        /// <param name="ZuFenGeFu">参数 --->  组数据分隔符</param>
        /// <returns>返回String类型,使用的分隔符可以传递参数指定</returns>
        public String GetSqlString_Lie(String TableName, String ListName, String ZiDuanFenGeFu = ",", String ZuFenGeFu = "#")
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //sql语句
            String SqlString = @"select " + ListName + " from " + TableName;
            //ExecuteDataTable,返回结果
            DataTable data = DocTools.MySql_.Ins.ExecuteDataTable(SqlString, Paramter.ToArray());
            //将数据进行转换String格式
            String res = DocTools.MySql_.Ins.ZhuanTableToString(data, ZiDuanFenGeFu, ZuFenGeFu);
            if (DocTools.Verify_.IsNull(data) == false)
            {
                return res;
            }
            else
            {
                return null;
            }
        }
        #endregion

        #region 传参直接获取结果  ---》  增加单条数据(返回int 受影响条数) 
        /// <summary>
        /// 传参直接获取结果  ---》  增加单条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">参数 --->  对应字段要添加的信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int AddSqlString_One(String TableName, String ziName, String AddName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //判断参数全部都不为空,防止异常
            if (DocTools.Verify_.IsNull(TableName) == false && DocTools.Verify_.IsNull(ziName) == false && DocTools.Verify_.IsNull(AddName) == false)
            {
                String insert = @"insert into " + TableName + " (" + ziName + ") value ('" + AddName + "')";
                return ExecuteNonquery(insert, Paramter.ToArray());
            }
            else return -1;
        }

        #region 多名(增加单条数据)
        /// <summary>
        /// 传参直接获取结果  ---》  增加单条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">参数 --->  对应字段要添加的信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int ZenJiaShuJu_One(String TableName, String ziName, String AddName)
        {
            return AddSqlString_One(TableName, ziName, AddName);
        }

        /// <summary>
        /// 传参直接获取结果  ---》  增加单条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">参数 --->  对应字段要添加的信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int TianJiaShuJu_One(String TableName, String ziName, String AddName)
        {
            return AddSqlString_One(TableName, ziName, AddName);
        }
        #endregion


        #endregion

        #region 传参直接获取结果  ---》  增加多条数据(返回int 受影响条数) 
        /* 
         * 调用方法1:DocTools.MySql_.Ins.AddSqlString_Many("J_fuzhu_jiage", "name,money1,money2", "\"11888714\",\"69852\",\"6881\"");  
         * 调用方法2:DocTools.MySql_.Ins.AddSqlString_Many("J_fuzhu_jiage", "name,money1,money2", "'11184','69852','6881'");  
         * ----> 给name,money1,money2 三个字段, 分别添加"'11184','69852','6881'" 三个信息(双引号和单引号都可以正确执行,双引号需要转义)
         */
        /// <summary>
        /// 传参直接获取结果  ---》  增加多条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">一次添加多个信息,双引号需要转义 -> "\"信息1\",\"信息2\",\"信息3\""</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int AddSqlString_Many(String TableName, String ziName, String AddName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            //判断参数全部都不为空,防止异常
            if (DocTools.Verify_.IsNull(TableName) == false && DocTools.Verify_.IsNull(ziName) == false && DocTools.Verify_.IsNull(AddName) == false)
            {
                //正确执行:insert into J_fuzhu_jiage (name,money1,money2) value ('1888714','69852','6881')  -->原sql语句
                //正确执行:insert into J_fuzhu_jiage (name,money1,money2) value ("1888714","69852","6881")  -->原sql语句
                String insert = "insert into " + TableName + " (" + ziName + ") value (" + AddName + ")";
                return ExecuteNonquery(insert, Paramter.ToArray());
            }
            else return -1;
        }

        #region 多明(增加多条数据)
        /// <summary>
        /// 传参直接获取结果  ---》  增加多条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">一次添加多个信息,双引号需要转义 -> "\"信息1\",\"信息2\",\"信息3\""</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int ZenJiaShuJu_Many(String TableName, String ziName, String AddName)
        {
            return AddSqlString_Many(TableName, ziName, AddName);
        }
        /// <summary>
        /// 传参直接获取结果  ---》  增加多条数据(返回int) 
        /// </summary>
        /// <param name="TableName">参数 --->  表名</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="AddName">一次添加多个信息,双引号需要转义 -> "\"信息1\",\"信息2\",\"信息3\""</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int TianJiaShuJu_Many(String TableName, String ziName, String AddName)
        {
            return AddSqlString_Many(TableName, ziName, AddName);
        }
        #endregion

        #endregion

        #region 传参直接获取结果  ---》  删除单条数据(返回int 受影响条数) 
        /// <summary>
        /// 传参直接获取结果  ---》  删除单条数据(返回int 受影响条数) 
        /// </summary>
        /// <param name="TableName">参数 --->  表明</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="DeleteName">参数 --->  删除要被删除的匹配信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示删除失败)</returns>
        public int DeleteSql_One(String TableName, String ziName, String DeleteName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            if (DocTools.Verify_.IsNull(TableName) == false && DocTools.Verify_.IsNull(ziName) == false && DocTools.Verify_.IsNull(DeleteName) == false)
            {
                //delete from h5user where opid = 'o_XOw1bc51n3j1CyXmUIWguAnsO4';

                String insert = @"delete from " + TableName + " where " + ziName + " = '" + DeleteName + "'";
                return ExecuteNonquery(insert, Paramter.ToArray());
            }
            return -1;
        }

        #region 多名(删除单条数据)
        /// <summary>
        /// 传参直接获取结果  ---》  删除单条数据(返回int 受影响条数) 
        /// </summary>
        /// <param name="TableName">参数 --->  表明</param>
        /// <param name="ziName">参数 --->  字段名 比如id</param>
        /// <param name="DeleteName">参数 --->  删除要被删除的匹配信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示增加失败)</returns>
        public int ShanChuSql_Oen(String TableName, String ziName, String DeleteName)
        {
            return DeleteSql_One(TableName, ziName, DeleteName);
        }
        #endregion


        #endregion

        #region 传参直接获取结果  ---》  更新单条数据(返回int 受影响条数) 
        /// <summary>
        /// 传参直接获取结果  ---》  更新单条数据(返回int 受影响条数) 
        /// </summary>
        /// <param name="TableName">参数 -->  表明</param>
        /// <param name="ziName">参数 -->  要更新的字段</param>
        /// <param name="UpdateName">参数 -->  要更新的信息</param>
        /// <param name="PipeiName">参数 -->  匹配的字段名</param>
        /// <param name="MuBiaoName">参数 -->  匹配目标的信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示更新失败)</returns>
        public int UpdateSql_One(String TableName, String ziName, String UpdateName, String PipeiName, String MuBiaoName)
        {
            //创建对象
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            if (DocTools.Verify_.IsNull(TableName) == false && DocTools.Verify_.IsNull(ziName) == false && DocTools.Verify_.IsNull(UpdateName) == false && DocTools.Verify_.IsNull(PipeiName) == false && DocTools.Verify_.IsNull(MuBiaoName) == false)
            {
                //@"UPDATE T_fuzhu_tongji set totaldata = '" + (int.Parse(ZhuanSetToString(x2)) + 1) + "'  WHERE name='" + mc + "'";
                //@"UPDATE T_fuzhu_tongji set totaldata = '" + (qjvar.tj_num + 1) + "'  WHERE id=2";

                String update = @"update " + TableName + " set " + ziName + " = '" + UpdateName + "' where " + PipeiName + " = '" + MuBiaoName + "'";
                return ExecuteNonquery(update, Paramter.ToArray());
            }
            return -1;
        }


        #region 多名(更新单条数据)
        /// <summary>
        /// 传参直接获取结果  ---》  更新单条数据(返回int 受影响条数) 
        /// </summary>
        /// <param name="TableName">参数 -->  表明</param>
        /// <param name="ziName">参数 -->  要更新的字段</param>
        /// <param name="UpdateName">参数 -->  要更新的信息</param>
        /// <param name="PipeiName">参数 -->  匹配的字段名</param>
        /// <param name="MuBiaoName">参数 -->  匹配目标的信息</param>
        /// <returns>返回被受影响的int (返回0活-1 表示更新失败)</returns>
        public int GengXinSql_One(String TableName, String ziName, String UpdateName, String PipeiName, String MuBiaoName)
        {
            return UpdateSql_One(TableName, ziName, UpdateName, PipeiName, MuBiaoName);
        }
        #endregion

        #endregion


        #region 传参直接获取结果  ---》  更新多条数据(返回int 受影响条数) 可修改多条2-3-4


        /// <summary>
        /// 传参直接获取结果  ---》  更新多条数据(返回int 受影响条数) 可修改多条2-3-4
        /// </summary>
        /// <param name="bm">表名</param>
        /// <param name="PiPeiZiduan">匹配字段</param>
        /// <param name="PiPeiData">匹配内容</param>
        /// <param name="zd1">修改字段1</param>
        /// <param name="xg1">修改内容1</param>
        /// <param name="zd2">修改字段2</param>
        /// <param name="xg2">修改内容2</param>
        /// <returns>返回int</returns>
        public int UpdateSql_Many(String bm, String PiPeiZiduan, String PiPeiData, String zd1, String xg1, String zd2, String xg2)
        {
            //同时修改2条信息
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            if (bm != string.Empty && PiPeiZiduan != string.Empty && PiPeiData != string.Empty && zd1 != string.Empty && xg1 != string.Empty && zd2 != string.Empty && xg2 != string.Empty)
            {
                string update = @"update " + bm + " set " + zd1 + " = '" + xg1 + "' , " + zd2 + " = '" + xg2 + "' where " + PiPeiZiduan + " = '" + PiPeiData + "'";
                return ExecuteNonquery(update, Paramter.ToArray());
            }

            return -1;
        }
        /// <summary>
        /// 传参直接获取结果  ---》  更新多条数据(返回int 受影响条数) 可修改多条2-3-4
        /// </summary>
        /// <param name="bm">表名</param>
        /// <param name="PiPeiZiduan">匹配字段</param>
        /// <param name="PiPeiData">匹配内容</param>
        /// <param name="zd1">修改字段1</param>
        /// <param name="xg1">修改内容1</param>
        /// <param name="zd2">修改字段2</param>
        /// <param name="xg2">修改内容2</param>
        /// <param name="zd3">修改字段3</param>
        /// <param name="xg3">修改内容3</param>
        /// <returns>返回int</returns>
        public int UpdateSql_Many(String bm, String PiPeiZiduan, String PiPeiData, String zd1, String xg1, String zd2, String xg2, String zd3, String xg3)
        {
            //同时修改3条信息
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            if (bm != string.Empty && PiPeiZiduan != string.Empty && PiPeiData != string.Empty && zd1 != string.Empty && xg1 != string.Empty && zd2 != string.Empty && xg2 != string.Empty && zd3 != string.Empty && xg3 != string.Empty)
            {
                string update = @"update " + bm + " set " + zd1 + " = '" + xg1 + "' , " + zd2 + " = '" + xg2 + "' , " + zd3 + " = '" + xg3 + "' where " + PiPeiZiduan + " = '" + PiPeiData + "'";
                return ExecuteNonquery(update, Paramter.ToArray());
            }

            return -1;
        }
        /// <summary>
        /// 传参直接获取结果  ---》  更新多条数据(返回int 受影响条数) 可修改多条2-3-4
        /// </summary>
        /// <param name="bm">表名</param>
        /// <param name="PiPeiZiduan">匹配字段</param>
        /// <param name="PiPeiData">匹配内容</param>
        /// <param name="zd1">修改字段1</param>
        /// <param name="xg1">修改内容1</param>
        /// <param name="zd2">修改字段2</param>
        /// <param name="xg2">修改内容2</param>
        /// <param name="zd3">修改字段3</param>
        /// <param name="xg3">修改内容3</param>
        /// <param name="zd4">修改字段4</param>
        /// <param name="xg4">修改内容4</param>
        /// <returns>返回int</returns>
        public int UpdateSql_Many(String bm, String PiPeiZiduan, String PiPeiData, String zd1, String xg1, String zd2, String xg2, String zd3, String xg3, String zd4, String xg4)
        {
            //同时修改4条信息
            List<MySqlParameter> Paramter = new List<MySqlParameter>();
            if (bm != string.Empty && PiPeiZiduan != string.Empty && PiPeiData != string.Empty && zd1 != string.Empty && xg1 != string.Empty && zd2 != string.Empty && xg2 != string.Empty && zd3 != string.Empty && xg3 != string.Empty && zd4 != string.Empty && xg4 != string.Empty)
            {
                string update = @"update " + bm + " set " + zd1 + " = '" + xg1 + "' , " + zd2 + " = '" + xg2 + "' , " + zd3 + " = '" + xg3 + "' , " + zd4 + " = '" + xg4 + "' where " + PiPeiZiduan + " = '" + PiPeiData + "'";
                return ExecuteNonquery(update, Paramter.ToArray());
            }

            return -1;
        }



        #endregion

**

~~所有调用mysql方法, 全部都有关闭连接. 不需要自己额外关闭.

**

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值