2017-06-24 75 views
0

我在学校有一项IT任务,需要为数据库收集数据。用C#远程连接到MySQL

我做了一个C#应用程序,允许用户输入,然后将其存储到mt数据库,问题是我似乎无法让它连接。

我有一个DNS:maliciouzzhd.ddns.net

我有端口3306打开,并转发。

我只是不知道该做什么之后。

我正在使用XAMPP。

这里是我的代码:

string CommandText = $"INSERT INTO UserData (FirstName, LastName, BirthDay, BirthMonth, BirthYear, UserName, EMail, Password, Admin, IP) values ('{FirstNameInput.Text}', '{LastNameInput.Text}', {BirthDayInput.Text}, '{BirthMonthInput.Text}', {BirthYearInput.Text}, '{UserNameInput.Text}', '{EMailInput.Text}', '{PasswordInput1.Text}', 0, '{IPTextBox.Text}')"; 

string ConnectionString = "server=maliciouzzhd.ddns.net;database=***********;uid=***********;pwd=**************;"; 
using (var mysqlconnection = new MySqlConnection(ConnectionString)) 
{ 
    mysqlconnection.Open(); 
    using (MySqlCommand cmd = mysqlconnection.CreateCommand()) 
    { 
     cmd.CommandType = CommandType.Text; 
     cmd.CommandTimeout = 300; 
     cmd.CommandText = CommandText; 
     object objValue = cmd.ExecuteScalar(); 
    } 
    mysqlconnection.Close(); 
} 

如果有人知道我能做些什么来得到它连接,那将是巨大的。

感谢

编辑:忘了提及,这个工程在本地主机上,当我改变Server=maliciouzzhd.ddns.netServer=10.0.0.1Server=127.0.0.1,但我需要它是远程的。

+0

你收到什么错误? –

+0

'无法连接到任何指定的MySQL主机。' – Python

+0

您需要先使用ang GUI工具进行连接。如果失败,那么问题出现在您创建的端口上。也许它没有正确配置。 – ngeksyo

回答

0

先添加一个mysql库。
项目 - >添加引用 - >浏览该dll文件。

然后通过使用

using MySql.Data.MySqlClient; 

MySQL连接代码导入类:

MySqlConnection conn; 
conn = new MySqlConnection("SERVER=server_name;DATABASE=database_name;UID=database_username;PASSWORD=database_password"); 

打开连接

conn.Open(); 

关闭连接

conn.Close();