Pascal P.
27-01-2002, 14:17
Ich führe folgendes SQL Statement aus:
select M.movie_title, UM.movie_id, UM.user_id from M.MOVIES, UM.USER_MOVIES where UM.usermovie_id = '26' AND M.movie_id = UM.movie_id
Bekomme jedoch folgende Meldung zurück:
select command denied to user: 'xxxxxxxx@www4.prosite.de' for table 'MOVIES'
Kann mir da einer weiterhelfen= Ich steh grad voll ufm Schlauch :(
Hast keine SELECT-Rechte für die Tabelle, änder das in den GRANT-Tables.
Pascal P.
27-01-2002, 15:04
Wie ich habe keine Select-Rechte? Aber dann dürfte doch z. B. "select * from MOVIES" auch nicht funktionieren und ich müsste die selbe Fehlermeldung bekommen. Nur dieser simple select funktioniert!
Oder habe ich da was falsch verstanden?
Stimmt das Statement überhaupt?
Ja, deine Syntax ist falsch... und nicht optimal.
SELECT m.movie_title,um.movie_id,um.user_id FROM movies m STRAIGHT JOIN user_movies um USING(id) WHERE um.usermovie_id = '26'
Pascal P.
27-01-2002, 15:41
Ahhhh SUPER!!!!!
Danke Sky. Es funktioniert. Hast mir echt verdammt geholfen.
Und schon wieder was gelernt *freu*
BIG THX :)
Gruß
Hi!
Straight Join brauchst ned unbedingt.
Dein Statement lieferte jediglich den denied error weil du einen Alias Fehler gemacht hast:
statt:
select M.movie_title, UM.movie_id, UM.user_id from M.MOVIES, UM.USER_MOVIES where UM.usermovie_id = '26' AND M.movie_id = UM.movie_id
select M.movie_title, UM.movie_id, UM.user_id from MOVIES M, USER_MOVIES UM where UM.usermovie_id = '26' AND M.movie_id = UM.movie_id
Dann funzt es auch.
Straight Join is nur für den join optimzer in mySQL falls die Tabellen in der falschen Reihenfolge selektiert wurden.
Grüsse