我在000webhost中创建了一个免费主机。它处于活动状态,这里是链接http://rndsctvlab.hostei.com/。
然后我创建数据库有信息
$mysql_host = "mysql10.000webhost.com";
$mysql_database = "a9127803_data1";
$mysql_user = "<username>";
$mysql_password = "<password>";
现在我想从我的电脑上连接并在这台主机上向mysql添加数据。我在C#中编写了一个代码,但它失败了,
警告
这是我的代码
string myConnection = "Server=31.170.160.97;Database=a9127803_data1; Port=3306;User ID=<username>;Password=<password>";
conDatabase = new MySqlConnection(myConnection);
string Query = "INSERT into ex1 (ID,Name,Address) values ('" + txt_ID.Text + "','" + txt_name.Text + "','" + txt_address.Text + "');";
MySqlCommand cmdDataBase = new MySqlCommand(Query, conDatabase);
MySqlDataReader myReader;
try
{
conDatabase.Open();
myReader = cmdDataBase.ExecuteReader();
MessageBox.Show("SAVE");
while (myReader.Read())
{
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
我该如何解决?谢谢你的帮助。
答案 0 :(得分:0)
之前我遇到过这个问题,发现我需要允许来自MySQL 5数据库的IP地址的用户权限。
因此,例如,如果您使用MySQL Workbench或MySQL Query Broswer,则查询将允许所有主机:
GRANT ALL ON a9127803_data1.* TO 'a9127803_data2'@'YourIpAddress';
不太确定000webhost是如何工作的,或者你是否可以从那里做查询,但上面的MySQL查询对我有帮助。您可以为每个数据库和用户自定义它。
编辑:
如果您需要自定义权限,请查看此MySQL link以获取使用GRANT
语法的更多示例
编辑2: 如果您需要通过命令行授予权限,这是一个示例:
cd C:\mysql //push to your MySQL directory on your server
.\bin\mysql -u user -p
//Enter Password now
grant all on YourDb.YourDbTable to YourUser@YourIpAddress;
输入此内容后,对于所选的数据库和表格,它应为您选择的IP地址授予您的用户权限。