zoukankan      html  css  js  c++  java
  • 自己封装的ASP.NET的MYSQL的数据库操作类

    代码
    /**
     * 作者:牛腩
     * 创建时间:2010年3月7日17时35分
     * 类说明:对MYSQL数据库的操作类
     
    */ 
    using System;
    using System.Data;
    using MySql.Data.MySqlClient;


    namespace Niunan.BYLW.Utility
    {
        
    /// <summary>对MYSQL数据库的操作类
        
    /// 
        
    /// </summary>
        public class MYSQLHelper
        {
            
    private MySqlConnection conn = null;
            
    private MySqlCommand cmd = null;
            
    private MySqlDataReader sdr = null;


            
    public MYSQLHelper()
            {
                
    //string connStr = WebConfigurationManager.ConnectionStrings["connStr"].ToString();
                string connStr = "server=localhost;database=test;uid=root;pwd=123456;charset=utf8";
                conn 
    = new MySqlConnection(connStr);
            }


            
    /// <summary>创建Command对象
            
    /// 
            
    /// </summary>
            
    /// <param name="sql">SQL语句</param>
            public void CreateCommand(string sql)
            {
                conn.Open();
                cmd 
    = new MySqlCommand(sql, conn);
            }


            
    /// <summary>添加参数
            
    /// 
            
    /// </summary>
            
    /// <param name="paramName">参数名称</param>
            
    /// <param name="value"></param>
            public void AddParameter(string paramName, object value)
            {
                cmd.Parameters.Add(
    new MySqlParameter(paramName, value));
            }


            
    /// <summary>执行不带参数的增删改SQL语句
            
    ///  
            
    /// </summary>
            
    /// <param name="cmdText">增删改SQL语句</param>
            
    /// <param name="ct">命令类型</param>
            
    /// <returns></returns>
            public bool ExecuteNonQuery()
            {
                
    int res;
                
    try
                {
                    res 
    = cmd.ExecuteNonQuery();
                    
    if (res > 0)
                    {
                        
    return true;
                    }
                }
                
    catch (Exception ex)
                {
                    
    throw ex;
                }
                
    finally
                {
                    
    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
                
    return false;
            }


            
    /// <summary>执行查询SQL语句
            
    ///  
            
    /// </summary>
            
    /// <param name="cmdText">查询SQL语句</param>
            
    /// <returns></returns>
            public DataTable ExecuteQuery()
            {
                DataTable dt 
    = new DataTable();
                
    using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    dt.Load(sdr);
                }
                
    return dt;
            }


            
    /// <summary>返回查询SQL语句查询出的结果的第一行第一列的值
            
    /// 
            
    /// </summary>
            
    /// <returns></returns>
            public string ExecuteScalar()
            {
                
    string res = "";
                
    try
                {
                    
    object obj = cmd.ExecuteScalar();
                    
    if (obj != null)
                    {
                        res 
    = obj.ToString();
                    }
                }
                
    catch (Exception ex)
                {
                    
    throw ex;
                }
                
    finally
                {
                    
    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
                
    return res;
            }


        }
    }

    都是把那个SQLITEHelper的操作类搬过来的,改了MySqlConnection等变量名,对MYSQL来说经常会出现中文乱码,经实验,解决方法:
    ① 用PHPMYADMIN建立MYSQL数据库的时候记得选择UTF-8的编码
    ② 在上面的数据库操作类中的连接字符串中记得加上charset=utf8
    这样用上面的操作类来插入中文就不会出现乱码了。

    撸码:复制、粘贴,拿起键盘就是“干”!!!
  • 相关阅读:
    paip.禁用IKAnalyzer 的默认词库.仅仅使用自定义词库.
    paip.语义分析分词常见的单音节字词 2_deDuli 单字词 774个
    IFL嵌入式小组技术博客入口导航
    devc++5.0.0.9的调试方法
    getch()、getche()和getchar()之间的区别
    devc++5.0.0.9的调试方法
    声明和定义的区别
    IFL嵌入式小组技术博客入口导航
    C/C++程序到内存分配个人总结
    getch()、getche()和getchar()之间的区别
  • 原文地址:https://www.cnblogs.com/niunan/p/1696830.html
Copyright © 2011-2022 走看看