sql >> Base de Datos >  >> RDS >> Database

¿Cómo crear una base de datos en SQL?

Cómo crear una base de datos en SQL

  • Es muy necesario crear una base de datos para almacenar los datos en la base de datos.
  • El nombre de la base de datos siempre debe ser único.
  • SQL no permite crear una base de datos con el mismo nombre que ya existe en el servidor.
  • Para garantizar la unicidad al crear una nueva base de datos, el administrador de la base de datos debe conocer las bases de datos ya existentes en el servidor.
  • El MOSTRAR BASES DE DATOS El comando se usa en SQL para listar todas las bases de datos que están presentes en el servidor.

Ejemplo:

Comprobaremos todas las bases de datos disponibles.

 mysql> SHOW DATABASES;
 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | mysql              |
 | performance_schema |
 | test               |
 +--------------------+
 5 rows in set (0.05 sec) 

En el ejemplo anterior, se muestran todas las bases de datos que están presentes en el servidor, incluidas las bases de datos del sistema (information_schema, performance_schema, mysql) y las bases de datos creadas por el usuario (demo, test).

  • Una vez que el administrador de la base de datos esté familiarizado con los nombres de las bases de datos ya existentes que están presentes en el servidor SQL, ahora el administrador de la base de datos puede crear una base de datos con cualquier nombre considerando la salida del comando SHOW DATABASES.

Sintaxis para crear una base de datos en SQL:

CREATE DATABASE DATABASENAME;

Ejemplo: Crearemos una nueva base de datos con el nombre “Exampledb”.

mysql> CREATE DATABASE Exampledb;

Una nueva base de datos con el nombre "exampledb" se crea con éxito en el servidor.

  • Para garantizar que la base de datos se haya creado correctamente, volveremos a utilizar el comando SHOW DATABASES.

Ejemplo:

Mostraremos todas las bases de datos disponibles para verificar si el "exampledb" está creado o no.

mysql> SHOW DATABASES;

Salida:

 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | exampledb         |
 | mysql              |
 | performance_schema |
 | test               |
 +--------------------+ 

Ahora, podemos ver que la base de datos recién creada con el nombre "exampledb" también aparece en la lista.

  • Alternativa al comando CREAR BASE DE DATOS es COMANDO CREAR ESQUEMA . Ambas consultas realizan la misma tarea de creación de base de datos.

Sintaxis:

CREATE SCHEMA DATABASENAME;

Ejemplo: Usaremos una consulta alternativa para crear una base de datos con el nombre "testDB".

mysql> CREATE SCHEMA testDB;

Ejemplo: Mostraremos todas las bases de datos disponibles para verificar si el "testdb" está creado o no.

mysql> SHOW DATABASES;

Salida

 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | exampledb         |
 | mysql              |
 | performance_schema |
 | test               |
 | testdb             |
 +--------------------+
 7 rows in set (0.05 sec) 
  • También se puede revisar la base de datos ya creada usando el siguiente comando:
SHOW CREATE DATABASE DATABASE_NAME;

Ejemplo:

 We will review the already created database named as “exampledb”.
 mysql> SHOW CREATE DATABASE exampledb; 

Salida:

 +------------+-----------------------------------------------------------------------+
 | Database   | Create Database                                                       |
 +------------+-----------------------------------------------------------------------+
 | exampledb | CREATE DATABASE ` exampledb ` /*!40100 DEFAULT CHARACTER SET latin1 */ |
 +------------+-----------------------------------------------------------------------+
 1 row in set (0.00 sec) 

Aquí, el comando que se usó para crear la base de datos llamada "exampledb" se muestra junto con el conjunto de caracteres. Dado que el conjunto de caracteres no se especificó durante la creación de la base de datos, la base de datos se crea con el conjunto de caracteres predeterminado, es decir, latin1 .

  • Para almacenar los datos en una base de datos en particular, es necesario decirle al servidor qué base de datos específica quiere usar el administrador.

Sintaxis:

USE DATABASE_NAME;

Ejemplo:

Para operar en una base de datos específica, el usuario debe decirle al servidor que desea realizar más consultas en "exampledb".

mysql> USE exampledb;

Salida:

Database changed

Dado que hemos utilizado la base de datos denominada "exampledb", todas las consultas adicionales ahora se realizarán en esta base de datos en particular.

Parámetros de la sentencia CREATE

También se puede improvisar la consulta CREAR BASE DE DATOS agregándole parámetros y especificaciones.

  1. SI NO EXISTE

Puede haber múltiples bases de datos en un solo servidor MySQL. Uno puede intentar crear una base de datos que ya esté presente en el servidor MySQL. Entonces, en ese caso, usar el parámetro "SI NO EXISTE" con la consulta CREAR BASE DE DATOS sirve para el propósito. Antes de la creación de una nueva base de datos, le indica al servidor que verifique si la base de datos ya existe con el nombre especificado.

Sintaxis:

CREATE DATABASE IF NOT EXISTS DATABASENAME;

Ejemplo:

Para crear una nueva base de datos "demodb", primero mostraremos todas las bases de datos disponibles y luego crearemos "demodb" si aún no existe una base de datos con ese nombre.

mysql> SHOW DATABASES;

Salida:

 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | exampledb         |
 | mysql              |
 | performance_schema |
 | test               |
 | testdb             |
 +--------------------+
 7 rows in set (0.05 sec) 
 mysql> CREATE DATABASE IF NOT EXISTS demodb;
 Query OK, 1 row affected (0.00 sec) 

Anteriormente no había ninguna base de datos con el nombre "demodb". Entonces, ahora se creará la base de datos con el nombre "demodb". Si intentamos crear una base de datos con el nombre existente sin el uso de SI NO EXISTE, entonces en ese caso SQL arrojará un error.

Ejemplo:

Ahora, mostraremos todas las bases de datos disponibles para asegurarnos de que se crea la base de datos "demodb".

mysql> SHOW DATABASES;

Salida:

 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | demodb             |
 | exampledb        |
 | mysql              |
 | performance_schema |
 | test               |
 | testdb             |
 +--------------------+
 8 rows in set (0.00 sec) 

Aquí se crea la base de datos con el nombre “demodb”.

  • Intercalación y conjunto de caracteres

La colación es un conjunto de reglas que son útiles para la comparación. Uno puede almacenar los datos SQL en un idioma diferente al inglés. Para almacenar los datos en algún otro idioma, debe seleccionar el conjunto de caracteres para ese idioma en particular. Los diferentes niveles de juego de caracteres incluyen servidor, base de datos, tabla y columna. Una vez que se elige el conjunto de caracteres, solo se pueden seleccionar las reglas de intercalación.

Ejemplo:

Crearemos una nueva base de datos con el nombre "muestra" cuyo conjunto de caracteres es "latin1" y la regla de clasificación es "latin1_swedish_ci".

mysql> CREATE DATABASE IF NOT EXISTS sample CHARACTER SET latin1 COLLATE latin1_swedish_ci;

Aquí, la base de datos de "muestra" se crea con latin1 como conjunto de caracteres y latin1_swedish_ci como regla de clasificación.