简单讲讲C#访问MySQL数据库的方法

本文介绍了使用C#和MySQL数据库进行交互的方法,包括驱动程序下载、动态库引用、数据库连接建立、执行查询语句及错误处理等核心步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、C#访问MySQL的驱动程序下载

http://dev.mysql.com/downloads/file.php?id=405442

mysql-connector-net-6.3.8.msi

安装mysql-connector-net


二、使用MySQL动态库

在vs2012中,在工程的引用中加入MySql.Data.dll

三、连接到MySQL数据库

MySqlConnection conn = new MySqlConnection();
string connStr = String.Format("server={0};user={1}; password={2}; database=mysql; pooling=false",
                sServer, sUser, sPassword);
conn.ConnectionString = connStr;

try
  {
    Console.WriteLine("Connecting to MySQL...");
    conn.Open();
    // Perform database operations
  }
  catch (Exception ex)
  {
    Console.WriteLine(ex.ToString());
    return 1;
  }

四、数据库查询语句的执行

这里仅介绍了select语句的执行,使用ExecuteReader函数。更新和删除语句有另外的MySqlCommand的函数来处理。
string sql = string.Format("SELECT networkperiod, parttype FROM alldb.part WHERE partid = {0}",
                iPartId);

MySqlCommand cmd = new MySqlCommand(sql, conn);
MySqlDataReader rdr = cmd.ExecuteReader();

if (rdr.HasRows)
{
   rdr.Read();

   int iPeriod = rdr.GetInt32(0);
   int iPartType = rdr.GetInt32(1);
}
rdr.Close();

这里先判断了rdr是否有数据,然后使用Read(),否则会有异常抛出。

五、总结

使用C#访问MySQL还比较简单,值得一试。


<think>好的,我现在需要回答用户关于C#中连接MySQL数据库的正确连接字符串的问题。首先,我需要仔细查看用户提供的引用内容,看看是否有相关的信息。 根据引用[1]和[2],提到了MySQL Connector/Net系列的连接字符串,这可能与C#相关,因为Connector/Net是MySQL官方提供的.NET连接器。引用[3]提到了C#中几种连接字符串的方式,但给出的示例是使用SQLOLEDB,这可能不适用于MySQL,需要确认是否正确。引用[4]主要讲的是MySQL字符串连接操作,可能不直接相关。 接下来,我需要确认C#连接MySQL常用的方法。通常,使用MySQL Connector/NET时,连接字符串的基本格式是"Server=服务器地址;Database=数据库名;Uid=用户名;Pwd=密码;"。此外,可能还有其他参数,如端口号、字符集等。用户提供的引用中,引用[1]和[2]提到了Connector/Net的连接字符串,这可能就是正确的来源。 需要确保语法正确,比如参数名称是否正确,比如User Id有时候写成Uid,Port的默认值是否是3306,是否需要显式指定。另外,引用[3]中的示例使用的是SQLOLEDB,这适用于SQL Server,而不是MySQL,所以用户需要注意不要混淆。 可能还需要考虑连接池、SSL设置等高级参数,但用户可能只需要基础示例。因此,基础连接字符串应该是:Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; 如果需要指定端口,可以添加Port=3306;。 最后,需要提醒用户安装MySQL Connector/NET,并在代码中使用MySqlConnection类,而不是SqlConnection。同时,引用[1]和[2]可以作为参考来源,说明这些信息来自官方文档或可靠资源。</think>在C#中连接MySQL数据库的正确连接字符串示例如下: ### 基础连接字符串格式 ```csharp Server=服务器地址;Database=数据库名称;Uid=用户名;Pwd=密码; ``` 例如: ```csharp string connStr = "Server=localhost;Database=mydb;Uid=root;Pwd=123456;"; ``` ### 扩展参数示例 1. **指定端口**(默认3306可省略) ```csharp Server=127.0.0.1;Port=3306;Database=mydb;Uid=user;Pwd=pass; ``` 2. **启用SSL加密** ```csharp Server=localhost;Database=mydb;Uid=user;Pwd=pass;SslMode=Required; ``` 3. **设置连接超时** ```csharp Server=localhost;Database=mydb;Uid=user;Pwd=pass;ConnectionTimeout=30; ``` ### 完整代码示例 ```csharp using MySql.Data.MySqlClient; public class MySQLDemo { public void Connect() { string connStr = "Server=localhost;Database=testdb;Uid=admin;Pwd=admin123;"; using (MySqlConnection conn = new MySqlConnection(connStr)) { conn.Open(); // 执行数据库操作 } } } ``` ### 注意事项 1. **依赖库**:需通过NuGet安装`MySql.Data`包 ```bash Install-Package MySql.Data ``` 2. **参数规范**: - `Uid`和`Pwd`是MySQL专用参数名,不同于SQL Server的`User ID`和`Password` - 特殊字符需URL编码,如密码包含`@`应替换为`%40` ### 引用说明 MySQL Connector/Net的连接字符串参数遵循官方规范,具体参数可参考文档[^1][^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值