gee*_*lot 0 c# mysql database connection console
我无法通过我的 C# cmd 连接到我的 MySql 数据库,它给我错误 1042 此代码来自: http ://social.msdn.microsoft.com/Forums/vstudio/en-US/67226fe6-175a-4f8b-96ab -a22fd836617f/使用-c将值插入到-mysql-
using System;
using System.Diagnostics;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using MySql.Data.MySqlClient;
class MyClass
{
public static void Main()
{
MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection();
MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand();
string SQL;
conn.ConnectionString = "server=SERVER; userid=USER;password=PASSWORD;database=DATABASE;";
try
{
conn.Open();
MessageBox.Show("Files Inserted into database successfully!",
"Success!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
conn.Close();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
MessageBox.Show("Error " + ex.Number + " has occurred: " + ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
Run Code Online (Sandbox Code Playgroud)
更新 - 已解决 已解决 服务器名称是一个错误的网址,我使用 db4free.net 也许我的主机中的破折号是问题所在
当 MySQL 服务器无法将客户端 IP 地址解析为主机名时,会报告 MySQL 错误 1042 (HY000)。
在我们的 MySQL 服务器上,我们禁用主机名解析,并使用 IP 地址。
如果您不想禁用主机名解析,则需要确保 MySQL 可以将您的客户端 IP 地址解析为主机名,方法是向 /etc/hosts 文件(在 MySQL 服务器主机上)添加适当的条目,或者将适当的条目添加到 DNS 服务器。
否则,您可以通过添加 MySQL 服务器配置文件的部分(并重新启动 MySQL 服务器)来禁用主机名skip-name-resolve解析[mysqld]。 注意:使用主机名定义的任何当前用户都将不可用,因为 MySQL 现在将查找(在 mysql.users 表中定义)形式的用户foo@192.168.1.33,而不是“ foo@tyrion”,并且 MySQL 不会找到匹配的。%(如果您的用户都是使用通配符作为主机名定义的,那么这不是问题。)