3

phpmyadminまたはMySQLコマンドラインでは、次のクエリを実行できません。

SELECT customer.First, customer.Last, login.Username, login.Password, customer.Addrln1,
    customer.Addrln2, customer.Postcode, customer.County, customer.Country, customer.Phone, customer.Email, 
    employee.EmpFirst, employee.EmpEmail, move.MoveID, move.CityOrig, move.CityDest, move.CountryOrig, 
    move.CountryDest, move.EnquiryDate, move.Surveydate, move.QuoteDate, move.DepEst, move.DepAct, move.ArrEst, move.ArrAct,
    move.ClearEst, move.ClearAct, move.DelEst, move.DelAct, move.Port, move.Method, move.Status
FROM customer
LEFT JOIN oim2.login ON customer.CustID = login.CustID
LEFT JOIN oim2.move ON customer.CustID = move.CustID
LEFT JOIN oim2.employee ON move.EmpID = employee.EmpID
WHERE customer.First =  'dave' and customer.Last='smith'

1142-テーブル'login'のユーザー'oceanai3'@'localhost'に対してSELECTコマンドが拒否されました

Dave smithは単なる名前と姓の例であり、ユーザーは次のクエリを実行できます。SELECT * from login SELECT * FROM move SELECT * FROM customer

元のクエリからログインするための参照を削除すると、エラー#1142が発生します-テーブル'move'のユーザー'oceanai3'@'localhost'に対してSELECTコマンドが拒否されました。私はデータベースの完全なSQLファイルをペーストビンしました、そしてそれはここで見つけることができます:http: //pastebin.com/H6aTS74m 私は答えを見つけるために他の多くの人々の投稿をトロールしましたが、私は助けになるものを見つけることができませんでした自分。

ありがとう

C

4

2 に答える 2

4
GRANT SELECT ON database.* TO user@'localhost' IDENTIFIED BY 'password';

プレースホルダーを自分の値に置き換えます。

于 2012-05-24T08:58:35.533 に答える
0

おそらく、Jivingsの投稿:

GRANT SELECT ON database.* TO user@'localhost' IDENTIFIED BY 'password';

次のように、ユーザーを一重引用符で囲む必要がある場合があります。

GRANT SELECT ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';

少なくとも、それは私にとってはうまくいきましたが、私はphpMyAdmin3.5.2.2を使用しています。それにもかかわらず、これが誰かを助けることができるなら、それが重要です:)

于 2013-02-23T01:35:28.630 に答える