mysql - 错误 : select command denied to user '

在我的网站中,我使用的是 MySQL 数据库。我正在使用一个网络服务,我在其中进行所有与数据库相关的操作。

现在在该网络服务的一种方法中,我收到以下错误。

select command denied to user '<userid>'@'<ip-address>' for table '<table-name>'

可能出了什么问题?

以下是我收到该错误的代码。我尝试调试,发现它在该行失败

MySqlDataReader result1 = command1.ExecuteReader();

这是我的代码:

        String addSQL = "Select Max(`TradeID`) from `jsontest`.`tbl_Positions";
        MySqlConnection objMyCon = new MySqlConnection(strProvider);
        objMyCon.Open();
        MySqlCommand command = objMyCon.CreateCommand();

        command.CommandText = addSQL;
         MySqlDataReader result = command.ExecuteReader();
        //int j = command.ExecuteNonQuery();
         while (result.Read())
         {
             MaxTradeID = Convert.ToInt32(result[0]);
         }
        objMyCon.Close();
        for (i = 1; i <= MaxTradeID; i++)
        {
            String newSQL = "Select `Strike`,`LongShort`,`Current`,`TPLevel`,`SLLevel` from `json`.`tbl_Position` where `TradeID` = '" + i + "'";
            MySqlConnection objMyCon1 = new MySqlConnection(strProvider);
            objMyCon1.Open();
            MySqlCommand command1 = objMyCon1.CreateCommand();

            command1.CommandText = newSQL;
            MySqlDataReader result1 = command1.ExecuteReader();
           objMyCon2.Close();

最佳答案

我确信原始发帖人的问题早已得到解决。但是,我遇到了同样的问题,所以我想我应该解释一下是什么导致了这个问题。

我正在对两个表进行联合查询——“foo”和“foo_bar”。但是,在我的 SQL 语句中,我有一个错字:'foo.bar'

因此,错误消息并没有告诉我“foo.bar”表不存在,而是表明该命令被拒绝——就好像我没有权限一样。

希望这对某人有所帮助。

关于mysql - 错误 : select command denied to user '<userid>' @'<ip-address>' for table '<table-name>' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4767055/

相关文章:

sql - 你能在 SQL 中定义 "literal"表吗?

sql - ON子句中的MySQL未知列

mysql - 在 Rails 迁移 (MySQL) 中,您能否指定新列的位置?

mysql - UNION 和 ORDER BY 的使用不正确?

mysql - 什么 MySQL 类型最适合 "price"列?

java - 如何解决无法加载身份验证插件 'caching_sha2_password' 问题

mysql - 如何将数据库从 Amazon RDS MySQL 实例导出到本地实例?

mysql - 用大量测试数据填充数据库表

mysql - 如何更改 mysql 表列的默认值?

mysql - 允许所有远程连接,MySQL