一尘不染

错误:对用户'的选择命令被拒绝'@'“表”'

mysql

在我的网站上,我正在使用MySQL数据库。我正在使用Web服务,在其中执行所有与数据库有关的操作。

现在,在该Web服务的一种方法中,出现以下错误。

选择拒绝表“”的用户“ @”的命令

有什么事吗

下面是我得到该错误的代码。我尝试调试,发现它失败了

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();

阅读 245

收藏
2020-05-17

共1个答案

一尘不染

数据库用户无权执行选择查询。

如果您具有mysql的root访问权限,则可以向用户授予权限

http://dev.mysql.com/doc/refman/5.1/en/grant.html

您的第二个查询在不同表上的不同数据库上。

 String newSQL = "Select `Strike`,`LongShort`,`Current`,`TPLevel`,`SLLevel` from `json`.`tbl_Position` where `TradeID` = '" + i + "'";

与您连接的用户无权访问该数据库或特定表中的数据。

你考虑过这件事吗?

2020-05-17