Penyelesaian Masalah Ditolak Pilih Perintah dalam MySQL
Dalam tapak web MySQL yang menggunakan perkhidmatan Web untuk operasi pangkalan data, ralat ditemui:
select command denied to user '<userid>'@'<ip-address>' for table '<table-name>'
Ralat ini biasanya berlaku pada baris di mana MySqlDataReader.ExecuteReader() dipanggil. Di bawah ialah kod yang berkaitan:
String addSQL = "Select Max(`TradeID`) from `jsontest`.`tbl_Positions"; ... MySqlCommand command1 = objMyCon1.CreateCommand(); command1.CommandText = newSQL; MySqlDataReader result1 = command1.ExecuteReader();
Apabila menjalankan kod, isu timbul pada line result1 = command1.ExecuteReader();.
Punca Kemungkinan:
Mesej ralat menunjukkan bahawa pengguna cuba melaksanakan arahan SELECT pada jadual, tetapi tidak mempunyai yang diperlukan kebenaran. Ralat ini juga boleh berlaku apabila terdapat kesilapan taip dalam pernyataan SQL.
Penyelesaian:
Semak Pernyataan SQL: Periksa pernyataan SQL untuk sebarang kesilapan taip atau sintaks. Khususnya, semak perkara berikut:
Sebagai contoh, pastikan bahawa nama jadual ialah tbl_Position dan bukan tbl_Position.
Tambahan Nota:
Seperti yang dinyatakan dalam jawapan yang diberikan pengguna, isu yang sama boleh timbul apabila menggunakan kesilapan menaip dalam pertanyaan UNION. Jika terdapat nama jadual yang tidak wujud dalam penyata, ralat jenis ini boleh berlaku.
Atas ialah kandungan terperinci Mengapa Perintah SELECT MySQL Saya Ditolak, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!