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

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

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

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

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

 

自己封装的ASP.NET的MYSQL的数据库操作类的更多相关文章

  1. php : mysql数据库操作类演示

    设计目标: 1,该类一实例化,就可以自动连接上mysql数据库: 2,该类可以单独去设定要使用的连接编码(set names XXX) 3,该类可以单独去设定要使用的数据库(use XXX): 4,可 ...

  2. php MySQL数据库操作类源代码

    php MySQL数据库操作类源代码: <?php class MySQL{ private $host; //服务器地址 private $name; //登录账号 private $pwd; ...

  3. 设计模式 - 单例模式mysql数据库操作类

    待续... index.php 调用方法: <?php header('Content-Type:text/html; charset=utf8'); require 'instance.php ...

  4. MySQL数据库操作类(PHP实现,支持连贯操作)

    <?php /** * Author: suvan * CreateTime: 2018/2/27 * description: 数据库操作类(仅对接MySQL数据库,主要利用MySQLi函数) ...

  5. asp.net+mysq 数据库操作类

    对数据库操作的使用方法: 1.引入命名空间 2.操作.三四行代码即可完成数据操作.类似于: using System; using System.Data; using System.Text; us ...

  6. asp.net数据库操作类(一)

    Hi Boy, 我现在需要使用asp.net操作access数据库,你来做个.boy听后就开始百度了,最后找到了一个比较好的方法.如下:  C# Code  1234567   <appSett ...

  7. php pdo mysql数据库操作类

    <?php namespace iphp\core; use iphp\App; /** * 数据库操作基类 基于pdo * @author xuen * 支持链式操作,支持参数绑定 * 说明1 ...

  8. Mysql之数据库操作

    数据库操作: 链接数据库: mysql -uroot -p masql -uroot -pmysql 退出数据库: exit/quit/ctrl + d   sql语句最后需要分号结尾: 查看时间: ...

  9. C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]

    原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using Sy ...

随机推荐

  1. 在原有的基础之上,启用NAT模型

    # 给虚拟主机实例添加一个网关 route add default gw 192.168.23.1   # 在宿主机打开网卡间转发功能 echo 1 > /proc/sys/net/ipv4/i ...

  2. Hibernate(六)

    三套查询之HQL查询 hql语句(面向):类   对象   属性 package com.rong.entity.hql; public class User { public User(int id ...

  3. Dsyy的第一篇博文~

    2017-08-07  周一  晴热热热热热 咳咳,很多人看到dsyy第一反应是什么意思?当然是大神媛媛!显然不是些(diao)(si)yy.(da)(si)yy...的别义,咋有点此地无银三百两的感 ...

  4. 关于“问吧APP”问卷调查报告分析与体会

         上周根据我们走廊奔跑队的“问吧APP”项目对本校范围内的学生发放了上百份调查问卷,并对此作出了统计和整理.针对我们项目所提出的问题涉及到的用户信息有性别.年龄.学历.职业.平时上网途径以及对 ...

  5. 如何在windows下Apache环境开启htaccess伪静态功能

     以下文章来自于网络,只做学习用 很多国人习惯用windows服务器或者在windows系统下调试PHP程序,在调试货使用的时候就遇到开启伪静态的各种问题,今天在网络上搜集了一些开启伪静态需要注意 ...

  6. Netty系列学习

    Netty系列之Netty高性能之道 Netty系列之Netty线程模型 Netty系列之Netty 服务端创建 Netty系列之Netty编解码框架分析 Netty系列之Netty百万级推送服务设计 ...

  7. 使用JMeter录制Web应用测试脚本

    环境 操作系统:Windows 7 工具:JMeter.Badboy 1. 使用代理录制Web性能测试脚本 使用代理录制脚本来创建测试计划无疑是一个简便的方法,代理所要完成的工作就是录制发往服务器的请 ...

  8. BZOJ 1066:[SCOI2007]蜥蜴(最大流)

    蜥蜴Description在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外. 每行每列中相邻石柱的距离为1,蜥蜴的跳跃距离是d,即蜥蜴可以跳到 ...

  9. 洛谷P2740 [USACO4.2]草地排水Drainage Ditches

    题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没 ...

  10. 【bzoj1495】[NOI2006]网络收费 暴力+树形背包dp

    题目描述 给出一个有 $2^n$ 个叶子节点的完全二叉树.每个叶子节点可以选择黑白两种颜色. 对于每个非叶子节点左子树中的叶子节点 $i$ 和右子树中的叶子节点 $j$ :如果 $i$ 和 $j$ 的 ...