2017-06-24 102 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();