C#(.net) MySql数据库链接工具类

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: C#(.net) MySql数据库链接工具类

先下载和安装MySQLDriverCS

http://sourceforge.net/projects/mysqldrivercs/

在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中

应用程序配置文件:

App.config:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

 <connectionStrings>

   <add name="server" connectionString="localhost"></add>

   <add name="database" connectionString="housing"></add>

   <add name="login" connectionString="root"></add>

   <add name="password" connectionString="root"></add>

 </connectionStrings>

</configuration>

SqlHelper.cs内容:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Configuration;

using MySQLDriverCS;

using System.Data;

namespace Demo

{

   class SqlHelper

   {

       private static string server = ConfigurationManager.ConnectionStrings["server"].ConnectionString;

       private static string database = ConfigurationManager.ConnectionStrings["database"].ConnectionString;

       private static string login = ConfigurationManager.ConnectionStrings["login"].ConnectionString;

       private static string password = ConfigurationManager.ConnectionStrings["password"].ConnectionString;

       public static int ExecuteNoQuery(String sql,MySQLParameter[] parameters)

       {

           using (MySQLConnection conn = new MySQLConnection(new MySQLConnectionString(server, database, login, password).AsString))

           {

               conn.Open();

           

               //防止乱码

               MySQLCommand commn = new MySQLCommand("set names gb2312", conn);

               commn.ExecuteNonQuery();

               //连接语句和SQL

               MySQLCommand cmd = new MySQLCommand(sql, conn);

               //添加参数

               cmd.Parameters.AddRange( parameters);

               //返回执行结果

               return cmd.ExecuteNonQuery();

           }

     

       }

       public static object ExecuteScalar(String sql, MySQLParameter[] parameters)

       {

           using (MySQLConnection conn = new MySQLConnection(new MySQLConnectionString(server, database, login, password).AsString))

           {

               conn.Open();

               //防止乱码

               MySQLCommand commn = new MySQLCommand("set names gb2312", conn);

               commn.ExecuteNonQuery();

               MySQLCommand cmd = new MySQLCommand(sql, conn);

               //添加参数

               cmd.Parameters.AddRange(parameters);

             

               return cmd.ExecuteNonQuery();

           }

     

       }

       //较少的时候

       public static DataTable ExecuteReaderEx(String sql, MySQLParameter[] parameters)

       {

           using (MySQLConnection conn = new MySQLConnection(new MySQLConnectionString(server, database, login, password).AsString))

           {

               conn.Open();

               //防止乱码

               MySQLCommand commn = new MySQLCommand("set names gb2312", conn);

               commn.ExecuteNonQuery();

               MySQLCommand cmd = new MySQLCommand(sql, conn);

               //添加参数

               cmd.Parameters.AddRange(parameters);

               MySQLDataAdapter mda = new MySQLDataAdapter(cmd);

               //查询出的数据是存在DataTable中的,DataTable可以理解成为一个虚拟的表,DataTable中的一行为一条记录,一列为一个数据库字段  

               DataTable dt = new DataTable();

               mda.Fill(dt);  

               return dt;

           }

       }

       public static DataSet ExecuteReaderEx2(String sql, MySQLParameter[] parameters)

       {

           using (MySQLConnection conn = new MySQLConnection(new MySQLConnectionString(server, database, login, password).AsString))

           {

               conn.Open();

               //防止乱码

               MySQLCommand commn = new MySQLCommand("set names gb2312", conn);

               commn.ExecuteNonQuery();

               MySQLCommand cmd = new MySQLCommand(sql, conn);

               //添加参数

               cmd.Parameters.AddRange(parameters);

               MySQLDataAdapter mda = new MySQLDataAdapter(cmd);

               //查询出的数据是存在DataTable中的,DataTable可以理解成为一个虚拟的表,DataTable中的一行为一条记录,一列为一个数据库字段  

               DataSet ds = new DataSet();

               mda.Fill(ds);

               return ds;

           }

       }

   }

}

使用示例:

 //sql语句

               string sql = "update tbl_sysuser set isActived=@isActived where id=@id";

       

               int number = SqlHelper.ExecuteNoQuery(sql, new MySQLParameter[]

               {

                   new MySQLParameter("@isActived", "YES"),

                   new MySQLParameter("@id", 2)

               });

           

               Console.WriteLine("受影响的行数:" + number);

————————————————

版权声明:本文为CSDN博主「明明如月学长」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/w605283073/article/details/43678149

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
|
8天前
|
Java 物联网 编译器
C#一分钟浅谈:.NET Core 与 .NET 5 区别
本文对比了 .NET Core 和 .NET 5,从历史背景、主要区别、常见问题及易错点等方面进行了详细分析。.NET Core 侧重跨平台支持和高性能,而 .NET 5 在此基础上统一了 .NET 生态系统,增加了更多新特性和优化。开发者可根据具体需求选择合适的版本。
27 7
|
4天前
|
人工智能 开发框架 前端开发
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
|
4天前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
3天前
|
人工智能 开发框架 安全
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
|
4天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
4天前
|
程序员 C# 图形学
全面的C#/.NET自学入门指南
全面的C#/.NET自学入门指南
|
28天前
|
JSON C# 开发者
C#语言新特性深度剖析:提升你的.NET开发效率
【10月更文挑战第15天】C#语言凭借其强大的功能和易用性深受开发者喜爱。随着.NET平台的演进,C#不断引入新特性,如C# 7.0的模式匹配和C# 8.0的异步流,显著提升了开发效率和代码可维护性。本文将深入探讨这些新特性,助力开发者在.NET开发中更高效地利用它们。
33 1
|
1月前
|
人工智能 开发框架 Cloud Native
C#/.NET/.NET Core技术前沿周刊 | 第 9 期(2024年10.07-10.13)
C#/.NET/.NET Core技术前沿周刊 | 第 9 期(2024年10.07-10.13)
|
1月前
|
Oracle Java 关系型数据库
使用DataGrip链接达梦数据库
使用DataGrip链接达梦数据库
55 0