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

    1. /** 
    2.  * 作者:牛腩 
    3.  * 创建时间:2010年3月7日17时35分 
    4.  * 类说明:对MYSQL数据库的操作类 
    5.  */   
    6. using System;  
    7. using System.Data;  
    8. using MySql.Data.MySqlClient;  
    9.   
    10.   
    11. namespace Niunan.BYLW.Utility  
    12. {  
    13.     /// <summary>对MYSQL数据库的操作类  
    14.     ///   
    15.     /// </summary>  
    16.     public class MYSQLHelper  
    17.     {  
    18.         private MySqlConnection conn = null;  
    19.         private MySqlCommand cmd = null;  
    20.         private MySqlDataReader sdr = null;  
    21.   
    22.   
    23.         public MYSQLHelper()  
    24.         {  
    25.             //string connStr = WebConfigurationManager.ConnectionStrings["connStr"].ToString();  
    26.             string connStr = "server=localhost;database=test;uid=root;pwd=123456;charset=utf8";  
    27.             conn = new MySqlConnection(connStr);  
    28.         }  
    29.   
    30.   
    31.         /// <summary>创建Command对象  
    32.         ///   
    33.         /// </summary>  
    34.         /// <param name="sql">SQL语句</param>  
    35.         public void CreateCommand(string sql)  
    36.         {  
    37.             conn.Open();  
    38.             cmd = new MySqlCommand(sql, conn);  
    39.         }  
    40.   
    41.   
    42.         /// <summary>添加参数  
    43.         ///   
    44.         /// </summary>  
    45.         /// <param name="paramName">参数名称</param>  
    46.         /// <param name="value">值</param>  
    47.         public void AddParameter(string paramName, object value)  
    48.         {  
    49.             cmd.Parameters.Add(new MySqlParameter(paramName, value));  
    50.         }  
    51.   
    52.   
    53.         /// <summary>执行不带参数的增删改SQL语句  
    54.         ///    
    55.         /// </summary>  
    56.         /// <param name="cmdText">增删改SQL语句</param>  
    57.         /// <param name="ct">命令类型</param>  
    58.         /// <returns></returns>  
    59.         public bool ExecuteNonQuery()  
    60.         {  
    61.             int res;  
    62.             try  
    63.             {  
    64.                 res = cmd.ExecuteNonQuery();  
    65.                 if (res > 0)  
    66.                 {  
    67.                     return true;  
    68.                 }  
    69.             }  
    70.             catch (Exception ex)  
    71.             {  
    72.                 throw ex;  
    73.             }  
    74.             finally  
    75.             {  
    76.                 if (conn.State == ConnectionState.Open)  
    77.                 {  
    78.                     conn.Close();  
    79.                 }  
    80.             }  
    81.             return false;  
    82.         }  
    83.   
    84.   
    85.         /// <summary>执行查询SQL语句  
    86.         ///    
    87.         /// </summary>  
    88.         /// <param name="cmdText">查询SQL语句</param>  
    89.         /// <returns></returns>  
    90.         public DataTable ExecuteQuery()  
    91.         {  
    92.             DataTable dt = new DataTable();  
    93.             using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))  
    94.             {  
    95.                 dt.Load(sdr);  
    96.             }  
    97.             return dt;  
    98.         }  
    99.   
    100.   
    101.         /// <summary>返回查询SQL语句查询出的结果的第一行第一列的值  
    102.         ///   
    103.         /// </summary>  
    104.         /// <returns></returns>  
    105.         public string ExecuteScalar()  
    106.         {  
    107.             string res = "";  
    108.             try  
    109.             {  
    110.                 object obj = cmd.ExecuteScalar();  
    111.                 if (obj != null)  
    112.                 {  
    113.                     res = obj.ToString();  
    114.                 }  
    115.             }  
    116.             catch (Exception ex)  
    117.             {  
    118.                 throw ex;  
    119.             }  
    120.             finally  
    121.             {  
    122.                 if (conn.State == ConnectionState.Open)  
    123.                 {  
    124.                     conn.Close();  
    125.                 }  
    126.             }  
    127.             return res;  
    128.         }  
    129.   
    130.   
    131.     }  
    132. }  

    都是把那个SQLITEHelper的操作类搬过来的,改了MySqlConnection等变量名,对MYSQL来说经常会出现中文乱码,经实验,解决方法:


    ① 用PHPMYADMIN建立MYSQL数据库的时候记得选择UTF-8的编码


    ② 在上面的数据库操作类中的连接字符串中记得加上charset=utf8


    这样用上面的操作类来插入中文就不会出现乱码了。

     
  • 相关阅读:
    Bash简单介绍
    三大框架常遇的错误:hibernate : object references an unsaved transient instance
    第二十八篇: 学习笔记
    oracle表空间查询维护命令大全之二(undo表空间)
    JSON 数据的系统解析
    MySQL字符串函数
    HDU ACM 1025 Constructing Roads In JGShining&#39;s Kingdom-&gt;二分求解LIS+O(NlogN)
    实时竞价RTB广告平台_传漾科技_中国领先的智能数字营销引擎
    秒聘网-产品经理招聘,免费、专注、极速
    “小鸟推送”从DSP做到营销效果最大化,挂牌新三板后正在寻求B轮定增
  • 原文地址:https://www.cnblogs.com/ranran/p/3914742.html
Copyright © 2011-2022 走看看