Can';t将C#WinForm连接到在线数据库
我使用下面的代码在两台不同的笔记本电脑上连接到SQL Server,并且只在一台上工作。另一个显示下一个错误:Can';t将C#WinForm连接到在线数据库,c#,mysql,c#-4.0,mysqlconnection,C#,Mysql,C# 4.0,Mysqlconnection,我使用下面的代码在两台不同的笔记本电脑上连接到SQL Server,并且只在一台上工作。另一个显示下一个错误: Application.exe Error: 0 : Unable to connect to any of the specified MySQL hosts. Exception thrown: 'MySql.Data.MySqlClient.MySqlException' in MySql.Data.dll The program '[3928] Application.exe'
Application.exe Error: 0 : Unable to connect to any of the specified MySQL hosts.
Exception thrown: 'MySql.Data.MySqlClient.MySqlException' in MySql.Data.dll
The program '[3928] Application.exe' has exited with code 0 (0x0).
我想说的是,我已经在管理访问主机上设置了%
。所以我不明白为什么它不能在另一台笔记本上工作
public partial class Form2 : Form
{
private void Form2_Load(object sender, EventArgs e)
{
string connString = $"SERVER=zzz; PORT=3306; DATABASE=DB_name; UID=usr; PASSWORD=password;";
conn = new MySqlConnection(connString);
try
{
conn.Open();
conn.Close();
conexiune = true;
}
catch
{
MessageBox.Show("Check Internet Connection");
}
}
}
有人知道如何解决吗?旁注:你真的不应该直接向应用程序公开数据库,你应该有一个你的应用程序可以接触到的服务,它可以为你与数据库通信。@đěxěŕ你能告诉我如何创建该服务吗?我怎么用谷歌搜索它呢?“你能告诉我我应该怎么创建那个服务吗?”这远远超出了SO的能力范围。有许多方法可以设置数据服务。您可以托管RESTAPI、gRPC服务。。。关键是,您从前端“抽象”掉了实际的DB。因此,在这方面,@đěxěŕ的建议并不坏,但如果您的一台机器与远程数据库存在连接问题,那么如果它与服务连接也存在问题,我也不会感到惊讶。也许先检查一下网络连接。您的故障机器能到达DB机器吗?