2010-07-14 5 views
0

Je lance une sous-requête assez basique sur MySQL 4.0.30.
Mon but est d'obtenir les permissions d'utilisateur de la table mysql.user pour tout utilisateur ayant des permissions sur une base de données spécifique, comme indiqué dans la table mysql.db. La requête ressemble à ceci:MySQL Sous-requête échoue sur MySQL 4.0 avec une erreur de syntaxe invalide

mysql> select * from mysql.user where User IN 
    (select User from mysql.db where Db='db_name')\G 

Comme vous pouvez le voir, il est assez basique et suit le subquery syntax in the MySQL manual. Cependant, quand j'exécute cela, il des erreurs avec la réponse suivante:

ERROR 1064: You have an error in your SQL syntax. Check the manual that 
corresponds to your MySQL server version for the right syntax to use near 'select 
User from mysql.db where Db='db_name')' at line 1 

J'ai aussi essayé la commande avec = ANY au lieu de IN. J'ai exécuté la même requête sur les versions 4.1 et 5.0 de MySQL. Toute aide ou compréhension à ce sujet est appréciée. Merci

Répondre