Curso de MySQL
Consultas, lista de correo 'C++ Con Clase' 'MySQL Con Clase' página de entrada Tabla de contenido Contactar con Webmaster
Curso Sentencias Funciones API C

SQL

Sentencias

ALTER TABLE ANALYZE TABLE BACKUP TABLE BEGIN BEGIN WORK CHECK TABLE CHECKSUM TABLE COMMIT CREATE DATABASE CREATE TABLE CREATE USER DELETE DESCRIBE DO DROP DATABASE DROP INDEX DROP TABLE FLUSH GRANT HANDLER INSERT INSERT ... SELECT INSERT DELAYED JOIN KILL LOAD DATA LOCK TABLES OPTIMIZE TABLE RENAME TABLE REPAIR TABLE REPLACE RESET REVOKE ROLLBACK SELECT SET SET TRANSACTION SHOW SHOW CHARACTER SET SHOW COLLATION SHOW COLUMNS SHOW CREATE DATABASE SHOW CREATE TABLE SHOW CREATE VIEW SHOW DATABASES SHOW ENGINES SHOW ERRORS SHOW GRANTS SHOW INDEX SHOW INNODB STATUS SHOW KEYS SHOW LOGS SHOW PRIVILEGES SHOW PROCESSLIST SHOW STATUS SHOW TABLE STATUS SHOW TABLES SHOW VARIABLES SHOW WARNINGS START TRANSACTION TRUNCATE UNION UNLOCK TABLES UPDATE USE

DROP USER

DROP USER user [, user] ...

La sentencia DROP USER elimina una o más cuentas MySQL. Para usarla se debe poseer el privilegio GRANT OPTION para la base de datos mysql. Cada cuenta se nombra usando el mismo formato que para GRANT o REVOKE; por ejemplo, 'jeffrey'@'localhost'. Las partes del usuario y la máquina del nombre de la cuenta corresponden a los valores de las columnas User y Host del registro de la tabla user para la cuenta.

DROP USER se añadió en MySQL 4.1.1 y originalmente sólo borra cuentas que no tengan privilegios. En MySQL 5.0.2, fue modificada para borrar también cuentas que tengan privilegios. Esto significa que el procedimiento para eliminar una cuenta depende de la versión de MySQL.

Desde MySQL 5.0.2, se puede borrar una cuenta y sus privilegios mediante:

DROP USER user;

La sentencia borra los registros de privilegios para la cuenta de todas las tablas de concesiones.

Para MySQL entre 4.1.1 y 5.0.1, DROP USER sólo borra cuentas MySQL que no tengan ningún privilegio. Sirve para eliminar cada registro de cuenta de la tabla de usuarios. Para eliminar una cuenta MySQL, se puede usar el procedimiento siguiente, realizando cada paso en el orden mostrado:

Usar SHOW GRANTS para determinar qué privilegios tiene la cuenta.

Usar REVOKE para revocar los privilegios mostrados por SHOW GRANTS. Esto borra los registros para la cuenta de todas las tablas de concesiones excepto la tabla user, y eliminar cualquier privilegio global listado en la tabla de usuario.

Borrar la cuenta usando DROP USER para eliminar el registro de la tabla de usuarios.

Antes de MySQL 4.1.1, DROP USER no está disponible. Primero se deben revocar los privilegios de la cuenta como se ha explicado. Después borrar el registro de la tabla user y restablecer las tablas de concesiones de este modo:

mysql> DELETE FROM mysql.user
    -> WHERE User='user_name' and Host='host_name';
mysql> FLUSH PRIVILEGES;

(4.1.1)