2009-07-04 5 views
143

Vous remarquerez peut-être de ma dernière question qu'un problème a causé quelques problèmes plus, Reading MySQL manuals in MySQL monitor?Comment supprimer une base de données MySQL?

Ma base de données est maintenant inutilisable en partie en raison de mon intérêt pour briser les choses et mon incapacité à regarder les messages d'erreur. Je sais que je ne devrais pas réutiliser les clés primaires, mais je voudrais les utiliser à nouveau après la suppression de la base de données que j'ai détériorée. Donc

Comment puis-je supprimer correctement une base de données MySQL?

Répondre

261

De l'invite MySQL:

mysql> drop database <db_name>; 
13

Si vous utilisez un script SQL lorsque vous créez votre base de données et avez des utilisateurs créés par votre script, vous devez les déposer aussi. Enfin, vous devez vider les utilisateurs; c'est-à-dire, forcez MySQL à lire à nouveau les privilèges de l'utilisateur.

-- DELETE ALL RECIPE 

drop schema <database_name>; 
-- Same as `drop database <database_name>` 

drop user <a_user_name>; 
-- You may need to add a hostname e.g `drop user [email protected]` 

FLUSH PRIVILEGES; 

Bonne chance!

+0

Le SQL ci-dessus ne fonctionne pas dans MySQL. (Peut-être que cela pour une ancienne version de mysql? – Jacob

1
drop database <db_name>; 
FLUSH PRIVILEGES; 
+7

Voir votre réponse à quoi il ressemble et essayer de formater la réponse correctement en l'éditant et ne pas simplement poster le code .. Donnez quelques explications ou informations ou l'utilisation de votre code. exemple, voir [cette réponse] (http://stackoverflow.com/a/16893057/756941) – NAZIK

-1

Si vous travaillez dans XAMPP et votre requête de base de données de dépôt ne fonctionne pas, alors vous pouvez aller à la balise d'opérations où l'on trouve la colonne (déposer la base de données (baisse)), cliquez sur ce bouton et votre la base de données sera supprimée.

21

Si votre base de données ne peut être supprimée, même si vous n'avez pas des fautes de frappe dans la déclaration et ne manquez pas le ; à la fin, mettez le nom de base de données entre les apostrophes inverses:

mysql> drop database `my-database`; 

contre-apostrophes sont des bases de données ou colonnes, apostrophes sont pour les données à l'intérieur de ceux-ci.

Pour plus d'informations, voir this answer to Stack Overflow question When to use single quotes, double quotes, and backticks?.

+1

Merci pour cette réponse, cela n'a pas fonctionné pour moi jusqu'à ce que j'utilise des guillemets, – tomsihap

+0

Je devais l'enfermer sur Windows. J'ai 'Vous avez une erreur dans votre syntaxe SQL;'. – zatziky

Questions connexes