sql >> Database teknologi >  >> RDS >> Database

Hvordan opretter man en database i SQL?

Sådan opretter du en database i SQL

  • Det er meget nødvendigt at oprette en database for at gemme dataene i databasen.
  • Databasenavnet skal altid være unikt.
  • SQL tillader ikke at oprette en database med det samme navn, som allerede findes på serveren.
  • For at sikre det unikke, mens der oprettes en ny database, skal databaseadministratoren være opmærksom på de allerede eksisterende databaser på serveren.
  • VIS DATABASER kommandoen bruges i SQL til at liste alle de databaser, der findes på serveren.

Eksempel:

Vi vil tjekke alle tilgængelige databaser.

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

I ovenstående eksempel vises alle de databaser, der er til stede på serveren, inklusive systemdatabaserne (informationsskema, performance_schema, mysql) og brugeroprettede databaser (demo, test).

  • Når databaseadministratoren er bekendt med navnene på allerede eksisterende databaser, som er til stede i SQL-serveren, kan databaseadministratoren nu oprette en database med et hvilket som helst navn i betragtning af outputtet af SHOW DATABASES-kommandoen.

Syntaks for oprettelse af en database i SQL:

CREATE DATABASE DATABASENAME;

Eksempel: Vi vil oprette en ny database med navnet "Exampledb".

mysql> CREATE DATABASE Exampledb;

En ny database med navnet "exampledb" er oprettet på serveren.

  • For at sikre, at databasen er oprettet, bruger vi igen kommandoen SHOW DATABASES.

Eksempel:

Vi viser alle tilgængelige databaser for at kontrollere, om "eksempelb" er oprettet eller ej.

mysql> SHOW DATABASES;

Output:

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

Nu kan vi se, at den nyoprettede database med navnet "exampledb" også er opført.

  • Alternativt til CREATE DATABASE-kommandoen er CREATE SCHEMA COMMAND . Begge forespørgsler udfører den samme opgave til databaseoprettelse.

Syntaks:

CREATE SCHEMA DATABASENAME;

Eksempel: Vi vil bruge en alternativ forespørgsel til at oprette en database med navnet "testDB".

mysql> CREATE SCHEMA testDB;

Eksempel: Vi vil vise alle tilgængelige databaser for at kontrollere, om "testdb" er oprettet eller ej.

mysql> SHOW DATABASES;

Output

 +--------------------+
 | Database           |
 +--------------------+
 | information_schema |
 | demo               |
 | exampledb         |
 | mysql              |
 | performance_schema |
 | test               |
 | testdb             |
 +--------------------+
 7 rows in set (0.05 sec) 
  • Man kan også gennemgå den allerede oprettede database ved at bruge nedenstående kommando:
SHOW CREATE DATABASE DATABASE_NAME;

Eksempel:

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

Output:

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

Her vises kommandoen, som blev brugt til at oprette databasen med navnet "exampledb" sammen med tegnsættet. Da tegnsættet ikke blev specificeret under oprettelsen af ​​databasen, oprettes databasen med standardtegnsættet, dvs. latin1 .

  • For at gemme dataene i en bestemt database, skal man fortælle serveren, hvilken specifik database administratoren ønsker at bruge.

Syntaks:

USE DATABASE_NAME;

Eksempel:

For at operere på en specifik database skal brugeren fortælle serveren, at han vil udføre yderligere forespørgsler på "exampledb".

mysql> USE exampledb;

Output:

Database changed

Da vi har brugt databasen med navnet "exampledb", vil alle de yderligere forespørgsler nu blive betjent på denne særlige database.

Parametre for CREATE-sætning

Man kan også improvisere CREATE DATABASE-forespørgslen ved at tilføje parametre og specifikationer til den.

  1. HVIS IKKE FINDER

Der kan være flere databaser i en enkelt MySQL-server. Man kan prøve at oprette en database, som allerede er til stede på MySQL-serveren. Så i så fald tjener det formålet at bruge parameteren "HVIS IKKE FINNES" med CREATE DATABASE-forespørgslen. Inden oprettelsen af ​​en ny database, instruerer den serveren om at kontrollere, om databasen allerede eksisterer med det angivne navn.

Syntaks:

CREATE DATABASE IF NOT EXISTS DATABASENAME;

Eksempel:

For at oprette en ny database "demodb", vil vi først vise alle de tilgængelige databaser og derefter oprette "demodb", hvis en database med det navn ikke allerede eksisterer.

mysql> SHOW DATABASES;

Output:

 +--------------------+
 | 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) 

Tidligere var der ingen database med navnet "demodb". Så nu vil databasen med navnet "demodb" blive oprettet. Hvis vi forsøger at oprette en database med det eksisterende navn uden brug af IF NOT EXISTS, så vil SQL i så fald give en fejl.

Eksempel:

Nu vil vi vise alle tilgængelige databaser for at sikre, at databasen "demodb" er oprettet.

mysql> SHOW DATABASES;

Output:

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

Her oprettes en database med navnet "demodb".

  • Samling og tegnsæt

Samling er et sæt regler, som er nyttige til sammenligning. Man kan gemme SQL-dataene på andet sprog end engelsk. For at gemme dataene på et andet sprog, skal du vælge tegnsættet for det pågældende sprog. Forskellige niveauer af tegnsæt inkluderer server, database, tabel og kolonne. Når først tegnsættet er valgt, kan kun reglerne for sortering vælges.

Eksempel:

Vi vil oprette en ny database med navnet "sample", hvis tegnsæt er "latin1" og sorteringsreglen er "latin1_swedish_ci".

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

Her oprettes en "sample"-database med latin1 som tegnsæt og latin1_swedish_ci som sorteringsregel.


  1. SpringBoot+Kotlin+Postgres og JSONB:org.hibernate.MappingException:Ingen dialekttilknytning for JDBC-typen

  2. Hvordan UNION fungerer i PostgreSQL

  3. Brugerdefineret rutine med DBMS_STATS, del II

  4. Flere array_agg()-kald i en enkelt forespørgsel