我想从 C# 连接到 mysql 服务器。我在网上找到了一些代码,但某处有问题,因为我得到了
A first chance exception of type 'System.ArgumentException' occurred in System.Data.dll
错误。
private void Initialise()
{
server = "dns to server";
database = "db_name";
uid = "root";
password = "password";
string connectionString;
connectionString = "SERVER=" + server + ";" + "DATABASE=" +
database + ";" + "UID=" +
uid + ";" + "PASSWORD=" + password + ";";
OR
connectionString = "Server=xxx.no-ip.org;Database=rdb;"+
"Uid=root;Pwd=wHt2%Zt;";
connection = new MySqlConnection(connectionString);
if (this.OpenConnection() == true)
Console.Out.Write("SUCCESS");
else
Console.Out.Write("ERROR");
}
private bool OpenConnection() {
try {
connection.Open();
return true;
}
catch (MySqlException ex){
switch (ex.Number) {
case 0:
MessageBox.Show("Cannot connect to server. Contact administrator");
break;
case 1045:
MessageBox.Show("Invalid username/password, please try again");
break;
}
return false;
}
}
我在控制台上没有收到任何消息。我添加了 Mysql.Data
作为对我的项目的引用,并且我使用了 using MySql.Data.MySqlClient;
我也尝试通过 gui 连接,但没有成功。想法?
编辑 1:使用任一连接字符串我的程序仍然无法运行。
编辑 2:添加了 OpenConnection 方法。
最佳答案
附:
http://www.connectionstrings.com/mysql
可能您需要改变您的方法...使用 webconfig 或应用程序配置来设置并从配置中读取您的连接字符串...
我还建议您阅读此...
http://www.codeproject.com/Articles/12300/An-ASP-NET-Application-Using-a-MySQL-Database
更新
根据您更新的发现...可能有两个问题,首先仔细检查您的连接字符串,其次是检查用户“root”是否具有所需的权限。
关于c# - C#连接Mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12185296/