一个ASP.NET的MYSQL的数据库操作类自己封装的

作者:whsnow 时间:2024-01-17 16:43:21 


/**
* 类说明:对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

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

标签:MYSQL,数据库
0
投稿

猜你喜欢

  • 超全面python常见报错以及解决方案梳理必收藏

    2022-02-14 16:33:17
  • Python图像处理之gif动态图的解析与合成操作详解

    2022-09-27 18:19:51
  • MySQL关于ERROR 1290 (HY000)报错解决方法

    2024-01-21 19:50:23
  • python游戏开发之视频转彩色字符动画

    2022-05-18 21:11:23
  • 基于php常用函数总结(数组,字符串,时间,文件操作)

    2023-11-24 00:23:46
  • php微信公众号开发之快递查询

    2023-11-11 03:30:36
  • 浅析python中SQLAlchemy排序的一个坑

    2023-03-29 10:47:23
  • Python中绑定与未绑定的类方法用法分析

    2021-08-06 22:56:54
  • MySQL 加密/压缩函数

    2024-01-23 23:51:14
  • pycharm配置QtDesigner的超详细方法

    2022-09-07 13:35:01
  • Python接口传输url与flask数据详解

    2023-03-18 20:00:42
  • Python常用模块之requests模块用法分析

    2023-12-30 15:11:49
  • python动态监控日志内容的示例

    2022-08-26 18:05:44
  • Tensorflow 多线程与多进程数据加载实例

    2023-12-30 23:53:47
  • 教你用Python查看茅台股票交易数据的详细代码

    2022-06-05 13:36:16
  • Python中filter与lambda的结合使用详解

    2022-03-03 01:35:03
  • python3+dlib实现人脸识别和情绪分析

    2023-10-18 12:07:10
  • Python 阶乘详解

    2022-01-16 13:56:00
  • PyQt5实现五子棋游戏(人机对弈)

    2022-05-22 12:00:50
  • 空间session失效过快的解决办法

    2010-09-15 10:01:00
  • asp之家 网络编程 m.aspxhome.com