我是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();
}
}
}
答案 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)
感谢您澄清您遇到的具体问题。这很有帮助;)
也感谢您发布错误消息。
将来,请将错误复制/粘贴为TEXT,而不是图像。
在这种情况下,通过谷歌翻译运行错误文本会很不错;)
问题:
根据错误消息,听起来您的C#程序可能正在尝试使用SQL Server驱动程序与MySQL数据库通信。那不会起作用:)
建议:
查看以下任何链接:
至少,您还需要获取MySQL驱动程序(例如来自NuGet):