`
niunan
  • 浏览: 721303 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

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

    博客分类:
  • .NET
阅读更多
/**
 * 作者:牛腩
 * 创建时间: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


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

分享到:
评论

相关推荐

    C#(VB.net)数据库访问操作类库

    数据库操作类: 支持 SQLServer mysql sqlite Sybase Oracle等DB 数据库操作类 包括执行SQL或者存储过程,返回DataSet、DataTable等功能 完全支持存储过程和参数调用 javascriptClassLibrary 包括一些JavaScript 类...

    Asp.net数据库封装访问类

    在Asp.net开发中,数据库访问是至关重要的一个环节,涉及到数据的读取、写入、更新和删除等操作。为了提高代码的可维护性和复用性,通常会进行数据库访问层(DAL)的封装。这个"数据库封装访问类"正是这样的一个组件...

    ASP.NET通用数据库访问组件

    ASP.NET通用数据库访问组件是一种软件开发工具,它提供了一种标准化的方法来访问各种类型的数据库,如MSSQL(Microsoft SQL Server)、MYSQL(MySQL Server)、ORACLE(Oracle Database)和ACCESS(Microsoft Access...

    asp.net 全能数据库

    4. ORM(对象关系映射):虽然未明确提及,但一个全能的数据库组件可能包含了ORM功能,它将数据库表映射为.NET类,通过对象的方式来操作数据,减少了对SQL的依赖,提高了开发效率。 5. 存储过程支持:存储过程是预...

    asp.net网络数据库开发实例精解cd

    在ASP.NET中,数据库连接和操作通常借助ADO.NET(ActiveX Data Objects .NET)来实现,这是一个数据访问组件,可以方便地与各种数据库系统交互,如SQL Server、MySQL等。在这些实例中,我们可能会学习到如何创建数据...

    asp.net连接数据库的代码

    总之,ASP.NET提供了强大的工具和类库来处理数据库连接,通过理解和实践,开发者可以轻松地实现与各种数据库(如SQL Server、MySQL、Oracle等)的交互。在实际项目中,确保正确管理和关闭连接,以及合理使用连接池,...

    ASP.NET公用数据库访问类组件(支持多种数据库)

    综上所述,ASP.NET公用数据库访问类组件是开发人员用来简化数据库交互的工具,通过封装数据库操作,提高了代码的可复用性和可维护性。它允许在不改变核心代码的情况下,灵活地切换到不同的数据库供应商,降低了对...

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

    总结来看,封装MYSQL操作类是提高***应用程序数据库操作效率和安全性的有效手段。通过合理的封装和接口设计,可以使得数据库操作代码更加清晰、易于管理,并且有助于减少代码重复,提升开发效率。当然,任何数据库...

    ASP.NET源码——烁空ASP.Net全能数据库组件开源版_.zip

    烁空ASP.Net全能数据库组件可能集成了这些技术,并且进行了封装,提供了更加便捷的API,使得开发者可以快速地进行数据读写、查询、事务处理等操作。这个组件可能支持多种数据库系统,如MySQL、SQL Server、Oracle、...

    asp.net数据库开发实用工程案例精选

    在本"ASP.NET数据库开发实用工程案例精选"中,我们将会深入探讨如何利用ASP.NET进行高效且功能丰富的数据库交互。 一、ASP.NET与数据库连接 在ASP.NET中,我们通常使用ADO.NET作为数据访问技术,它提供了对各种...

    精心整理的几个ASP.NET通用类

    1. ASP.NET数据库操作通用类 - DB.cs 这个类通常包含了一系列静态方法,用于简化与数据库的交互。例如,它可能封装了连接数据库、执行SQL语句、处理事务、读写数据等常见操作。开发者可以利用此类快速地进行增删改...

    一个简单的ASP.NET访问MySql数据库.doc

    创建一个名为`MySqlClass`的公共类,用于封装数据库连接和操作。这个类中包含了构造函数和数据集获取方法。构造函数中,通过`ConfigurationManager.AppSettings["mysqlconn"]`获取web.config中的连接字符串,然后...

    asp_net连接mysql数据库(内附说明)

    通过以上步骤,您可以成功地在ASP.NET应用中建立与MySQL数据库的连接,并进行数据操作。这只是一个基本的指南,实际开发过程中可能会涉及更多复杂情况,如处理并发、用户认证、数据分页等,但这个起点应该能帮助您...

    asp.net+access数据库小型网站

    【ASP.NET与Access数据库小型网站开发详解】 ASP.NET是微软公司推出的一种用于构建Web应用程序的框架,它基于.NET Framework,提供了强大的服务器端编程模型。在本文中,我们将深入探讨如何利用ASP.NET结合Access...

    asp.net链接数据库

    `SqlHelper`类是ASP.NET中一种常用的数据库访问辅助类,它封装了ADO.NET(Microsoft的数据访问技术)的细节,使得数据库操作更加简单和易用。`SqlHelper`不是ASP.NET框架的标准组件,但它通常由开发者自定义创建,...

    ASP.NET管理MySQL数据库的小工具 v1.0_mysqlrelease.zip

    在给定的压缩包文件“ASP.NET管理MySQL数据库的小工具 v1.0_mysqlrelease.zip”中,我们可以推测这是一款基于ASP.NET平台的小型应用程序,专门设计用于管理和操作MySQL数据库。 MySQL是一种流行的开源关系型数据库...

    asp.net数据库基本操作实例

    在这个"asp.net数据库基本操作实例"中,我们可以深入理解如何在ASP.NET环境中与数据库进行交互,这对于初学者来说是极其重要的实践环节。 首先,我们关注的是数据访问层(DAL,Data Access Layer)。在ASP.NET中,...

    ASP.NET 2.0数据库入门经典(第4版)

    此外,还会探讨如何利用C#的面向对象特性,如类和对象,来封装数据库操作,提高代码的可重用性和可维护性。 数据库的连接字符串管理是另一个重要的话题。书中会详细解释如何配置和管理连接字符串,以确保安全地连接...

    ASP.NET 2.0数据库通用模块开发与系统移植1

    总的来说,通过学习“ASP.NET 2.0数据库通用模块开发与系统移植1”,开发者可以掌握如何构建可复用的数据库组件,了解系统移植的策略,以及在ASP.NET 2.0中如何有效地进行数据操作。结合VC++的数据开发基础知识,将...

Global site tag (gtag.js) - Google Analytics