gpt4 book ai didi

c# - 错误 "Unable to connect to any of the specified MySQL hosts."

转载 作者:行者123 更新时间:2023-11-29 18:36:18 24 4
gpt4 key购买 nike

我是 C# 新手。我想连接到我的数据库。如果我使用地址“localhost”执行此操作,则工作正常。如果我使用我的网络服务器 IP,它不起作用并且出现错误

Unable to connect to any of the specified MySQL hosts.

我的问题是什么?

namespace MySqlCRUD
{
public partial class Form1 : Form
{

String connectionString = "server=84.200.7.136;uid=root;" +
"pwd=;database=bookdb;";


int AcapWatchID = 0;
public Form1()
{
InitializeComponent();
}

private void btnSave_Click(object sender, EventArgs e)
{
using (MySqlConnection mysqlCon = new MySqlConnection(connectionString))
{
mysqlCon.Open();
MySqlCommand mySqlCmd = new MySqlCommand("BookAddOrEdit",mysqlCon);
mySqlCmd.CommandType = CommandType.StoredProcedure;
mySqlCmd.Parameters.AddWithValue("_AcapWatchID", AcapWatchID);
mySqlCmd.Parameters.AddWithValue("_Artist", txtArtist.Text.Trim());
mySqlCmd.Parameters.AddWithValue("_Albumname", txtAlbumname.Text.Trim());
mySqlCmd.Parameters.AddWithValue("_Download1", txtDownload1.Text.Trim());
mySqlCmd.Parameters.AddWithValue("_Download2", txtDownload2.Text.Trim());
mySqlCmd.Parameters.AddWithValue("_Verlinkt", txtVerlinkt.Text.Trim());
mySqlCmd.ExecuteNonQuery();
MessageBox.Show("[ACAPWatch] Album wurde erfolgreich hinzugefügt!");
Clear();
GridFill();
}
}

void GridFill()
{
using (MySqlConnection mysqlCon = new MySqlConnection(connectionString))
{
mysqlCon.Open();
MySqlDataAdapter sqlDa = new MySqlDataAdapter("BookViewAll",mysqlCon);
sqlDa.SelectCommand.CommandType = CommandType.StoredProcedure;
DataTable dtblBook = new DataTable();
sqlDa.Fill(dtblBook);
dgvBook.DataSource = dtblBook;
dgvBook.Columns[0].Visible = false;
}
}

private void Form1_Load(object sender, EventArgs e)
{
Clear();
GridFill();
}

void Clear()
{
txtArtist.Text = txtAlbumname.Text = txtDownload1.Text = txtDownload2.Text = txtVerlinkt.Text = txtSearch.Text = "";
AcapWatchID = 0;
btnSave.Text = "Speichern";
btnDelete.Enabled = false;
}

private void dgvBook_DoubleClick(object sender, EventArgs e)
{
if (dgvBook.CurrentRow.Index != -1)
{
txtArtist.Text = dgvBook.CurrentRow.Cells[1].Value.ToString();
txtAlbumname.Text = dgvBook.CurrentRow.Cells[2].Value.ToString();
txtDownload1.Text = dgvBook.CurrentRow.Cells[3].Value.ToString();
txtDownload2.Text = dgvBook.CurrentRow.Cells[4].Value.ToString();
txtVerlinkt.Text = dgvBook.CurrentRow.Cells[5].Value.ToString();
AcapWatchID = Convert.ToInt32(dgvBook.CurrentRow.Cells[0].Value.ToString());
btnSave.Text = "Löschen";
btnDelete.Enabled = Enabled;
}
}

private void btnSearch_Click(object sender, EventArgs e)
{
using (MySqlConnection mysqlCon = new MySqlConnection(connectionString))
{
mysqlCon.Open();
MySqlDataAdapter sqlDa = new MySqlDataAdapter("BookSearchByValue", mysqlCon);
sqlDa.SelectCommand.CommandType = CommandType.StoredProcedure;
sqlDa.SelectCommand.Parameters.AddWithValue("_SearchValue",txtSearch.Text);
DataTable dtblBook = new DataTable();
sqlDa.Fill(dtblBook);
dgvBook.DataSource = dtblBook;
dgvBook.Columns[0].Visible = false;
}
}

private void btnCancel_Click(object sender, EventArgs e)
{
Clear();
}

private void btnDelete_Click(object sender, EventArgs e)
{
using (MySqlConnection mysqlCon = new MySqlConnection(connectionString))
{
mysqlCon.Open();
MySqlCommand mySqlCmd = new MySqlCommand("BookDeleteByID", mysqlCon);
mySqlCmd.CommandType = CommandType.StoredProcedure;
mySqlCmd.Parameters.AddWithValue("_AcapWatchID", AcapWatchID);
mySqlCmd.ExecuteNonQuery();
MessageBox.Show("[ACAPWatch!] Album wurde aus der Datenbank entfernt!");
Clear();
GridFill();
}
}

}
}

最佳答案

您的 MySQL 是否与 WebServer 运行在同一台服务器上?是的,在同一服务器上运行。

如果是,它是否位于默认端口 (3306) 上?您的 WebServers 防火墙是否允许 MySQL 端口上的流量?

是的,在默认端口上运行,并且防火墙允许此端口上的流量;)

关于c# - 错误 "Unable to connect to any of the specified MySQL hosts.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45263763/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com