我只是在我的工具,連接到我租用的MySql數據庫工作。 (對於理論來說太多了)。 是的,它適用於下面的代碼,但只適用於localhost。 (數據被刪)連接到MySql數據庫不可能 - 「選擇命令拒絕用戶[...]」
以下字符串被放置到類 「Common.cs」
// String which is used to connect
public static string myConnection = @"datasource=****.****.****.com;port=3306;username=****;password=****;"
以下代碼放置到 「frmMain.cs」
// The code of the procedure which is used to connect
private void btnConnect_Click(object sender, EventArgs e)
{
string username = textUsername.Text;
string password = textPassword.Text;
try
{
MySqlConnection myConn = new MySqlConnection(Common.myConnection);
MySqlCommand SelectCommand = new MySqlCommand("SELECT * from ha_system.main where name='" + username + "' and password='" + password + "' ;", myConn);
MySqlDataReader myReader;
myConn.Open();
myReader = SelectCommand.ExecuteReader();
int count = 0;
//myReader loads data
while (myReader.Read())
{
// [...]
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
所以問題是,它在連接此異常時拋出我: 「SELECT命令被拒絕給用戶'xxxxxx'@'xxxxxxxxxxxxxxxxxxxx'for table'main'」
同樣當我嘗試連接到一個db4free.com的數據庫。這些數據絕對正確,我有權連接或選擇,等等。 (我已經聯繫過該公司幫助我,他們說我擁有所有必需的權限,並且他們無法爲我做任何事情。)
注意:我也可以用Navicat或其他程序連接到這個db來管理MySql服務器。
那麼可能是什麼錯誤?爲什麼會出現以及如何解決? 在此先感謝。
Regards,
Me。
謝謝你試圖幫助我。它沒有變好,出現同樣的錯誤。 – user3080573
我建議在嘗試從遠程客戶端連接時查看分配給用戶的權限。錯誤信息包含'user @ host',因此從遠程客戶端連接時似乎是一個問題。使用可以在網絡上工作的管理工具,併爲用戶可以連接的主機指定'%'。 – Steve