如何用C#连接mysql(简单程序)

时间:2018-01-30 23:50:10

标签: c# mysql visual-studio

我是C#的初学者,我打算创建一个简单的程序来检查与mysql服务器的连接(在这种情况下我使用xampp,因此连接是本地的)。 问题是与mysql服务器的连接不起作用,因此"无法打开连接!"弹出框。我很感激所有的解释。谢谢你:))

using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace WindowsFormsApp1
{
public partial class Form1 : Form
{

    public Form1()
    {
        InitializeComponent();
    }

    private void btnSend_Click(object sender, EventArgs e)
    {
        SqlConnection cnn;
        string server = "localhost";
        string database = "test";
        string uid = "root";
        string password = "";   //im using xampp
        string connectionString;
        connectionString = "SERVER=" + server + ";" + "DATABASE=" +
        database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
        MySqlConnection connection = new MySqlConnection(connectionString);

        cnn = new SqlConnection(connectionString);
        try
        {
            cnn.Open();
            MessageBox.Show("Connection Open ! ");
            cnn.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show("Can not open connection ! ");
        }
    }

    private void button1_Click(object sender, EventArgs e)
    {
        this.Close();
    }
}

}

2 个答案:

答案 0 :(得分:2)

您不能使用SqlConnection。 SqlConnection适用于SQL Server,您需要从NuGet安装 MySql.Data

  在包管理器控制台中

安装包MySql.Data

然后您可以创建MySqlConnection对象并连接到数据库:

System.Data.IDbConnection cnn = new MySql.Data.MySqlClient.MySqlConnection("my Connection String");
    try
    {
        cnn.Open();
        MessageBox.Show("Connection Open ! ");
        cnn.Close();
    }

答案 1 :(得分:1)

  1. 感谢您澄清您遇到的具体问题。这很有帮助;)

  2. 也感谢您发布错误消息。

    将来,请将错误复制/粘贴为TEXT,而不是图像。

    在这种情况下,通过谷歌翻译运行错误文本会很不错;)

  3. 问题:

    根据错误消息,听起来您的C#程序可能正在尝试使用SQL Server驱动程序与MySQL数据库通信。那不会起作用:)

  4. 建议:

    查看以下任何链接:

  5. 至少,您还需要获取MySQL驱动程序(例如来自NuGet):