TECNOLOGICO DE ESTUDIOS SUPERIORES DE ECATEPEC FUNDAMENTOS DE BASE DE DATOS TAREA: COMANDOS CREATE DATABASE Y DROP DATABASE FERMIN HERNANDEZ VELAZQUEZ GRUPO: 6551 Sintaxis de CREATE DATABASE CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification [, create_specification] ...] create_specification: [DEFAULT] CHARACTER SET charset_name | [DEFAULT] COLLATE collation_name CREATE DATABASE crea una base de datos con el nombre dado. Para usar CREATE DATABASE, necesita el permiso CREATE en la base de datos. Las reglas para nombres de bases de datos permitidos se dan en Sección 9.2, “Nombres de bases de datos, tablas, índices, columnas y alias”. Ocurre un error si la base de datos existe y no especifica IF NOT EXISTS. En MySQL 5.0, las opciones create_specification pueden darse para especificar característica de la base de datos. Las características se almacenan en el fichero db.opt en el directorio de la base de datos. La cláusulaCHARACTER SET especifica el conjunto de caracteres por defecto de la base de datos. La cláusula COLLATEespecifica la colación por defecto de la base de datos. Los nombres de colación y de conjunto de caracteres se discuten en Capítulo 10, Soporte de conjuntos de caracteres. Las bases de datos en MySQL se implementan como directorios que contienen ficheros que se corresponden a tablas en la base de datos. Como no hay tablas en la base de datos cuando se crean inicialmente, el comandoCREATE DATABASE en MySQL 5.0 crea sólo un directorio bajo el directorio de datos de MySQL y el ficherodb.opt file. Si crea manualmente un directorio bajo el directorio de datos (por ejemplo, con mkdir), el servidor lo considera como un directorio de base de datos y muestra la salida de SHOW DATABASES. CREATE SCHEMA puede usarse desde MySQL 5.0.2. También puede usar el programa mysqladmin para crear bases de datos. Consulte Sección 8.4, “Administrar un servidor MySQL con mysqladmin”. Sintaxis de DROP DATABASE DROP {DATABASE | SCHEMA} [IF EXISTS] db_name DROP DATABASE borrar todas las tablas en la base de datos y borrar la base de datos. Sea muy cuidadoso con este comando! Para usarDROP DATABASE, necesita el permiso DROP en la base de datos. IF EXISTS se usa para evitar un error si la base de datos no existe. DROP SCHEMA puede usarse desde MySQL 5.0.2. Si usa DROP DATABASE en una base de datos enlazada simbólicamente, tanto el enlace como la base de datos se borran. DROP DATABASE retorna el número de tablas que se eliminan. Se corresponde con el número de ficheros .frmborrados. El comando DROP DATABASE borrar del directorio de base de datos los ficheros y directorios que MySQL puede crear durante operaciones normales: Todos los ficheros con estas extensiones: .BAK .DAT .HSH .MRG .MYD .ISD .MYI .db .frm Todos los subdirectorios con nombres que tienen dos dígitos hexadecimales 00-ff. Son subdirectorios usados por tablas RAID . (Estos directorios no se borran desde MySQL 5.0, cuando se eliminó el soporte para tablasRAID . Debe convertir las tablas RAID y eliminar estos directorios manualmente antes de actualizar a MySQL 5.0. Consulte Sección 2.10.1, “Aumentar la versión de 4.1 a 5.0”.) El fichero db.opt , si existe. Si permanecen otros ficheros o directorios en el directorio de la base de datos tras que MySQL borre los ficheros listados, el directorio de base de datos no puede borrarse. En este caso, debe borrar cualquier fichero restante manualmente y realizar el comando DROP DATABASE de nuevo. Puede borrar bases de datos con mysqladmin. Consulte Sección 8.4, “Administrar un servidor MySQL conmysqladmin”. Sintaxis de DROP TABLE DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCADE] DROP TABLE borra una o más tablas. Debe tener el permiso DROP para cada tabla. Todos los datos de la definición de tabla son borrados, así que tenga cuidado con este comando! Use IF EXISTS para evitar un error para tablas que no existan. Un NOTE se genera para cada tabla no existente cuando se usa IF EXISTS. Consulte Sección 13.5.4.22, “Sintaxis de SHOW WARNINGS”. RESTRICT y CASCADE se permiten para hacer la portabilidad más fácil. De momento, no hacen nada. Nota: DROP TABLE hace un commit automáticamente con la transacción activa,a no ser que use la palabraTEMPORARY. La palabra TEMPORARY tiene el siguiente efecto: El comando sólo borra tablas TEMPORARY. El comando no acaba una transacción en marcha. No se chequean derechos de acceso. (Una tabla TEMPORARY es visible sólo para el cliente que la ha creado, así que no es necesario.) Usar TEMPORARY es una buena forma de asegurar que no borra accidentalmente una tabla no TEMPORARY.