Jak utworzyć bazę danych w SQL
- Bardzo konieczne jest utworzenie bazy danych w celu przechowywania danych w bazie danych.
- Nazwa bazy danych musi być zawsze unikalna.
- SQL nie pozwala na utworzenie bazy danych o tej samej nazwie, która już istnieje na serwerze.
- Aby zapewnić niepowtarzalność podczas tworzenia nowej bazy danych, administrator bazy danych musi mieć świadomość istnienia już istniejących baz danych na serwerze.
- POKAŻ BAZY DANYCH polecenie jest używane w SQL do wylistowania wszystkich baz danych znajdujących się na serwerze.
Przykład:
Sprawdzimy wszystkie dostępne bazy danych.
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | demo | | mysql | | performance_schema | | test | +--------------------+ 5 rows in set (0.05 sec)
W powyższym przykładzie wyświetlane są wszystkie bazy danych, które są obecne na serwerze, w tym bazy danych systemowych (schemat_informacyjny, schemat_wydajności, mysql) oraz bazy danych utworzone przez użytkownika (demo, test).
- Gdy administrator bazy danych jest zaznajomiony z nazwami już istniejących baz danych, które są obecne na serwerze SQL, teraz administrator bazy danych może utworzyć bazę danych o dowolnej nazwie, biorąc pod uwagę dane wyjściowe polecenia SHOW DATABASES.
Składnia tworzenia bazy danych w SQL:
CREATE DATABASE DATABASENAME;
Przykład: Utworzymy nową bazę danych o nazwie „Exampledb”.
mysql> CREATE DATABASE Exampledb;
Nowa baza danych o nazwie „exampledb” została pomyślnie utworzona na serwerze.
- Aby zapewnić pomyślne utworzenie bazy danych, ponownie użyjemy polecenia SHOW DATABASES.
Przykład:
Wyświetlimy wszystkie dostępne bazy danych, aby sprawdzić, czy „przykładowa baza danych” została utworzona, czy nie.
mysql> SHOW DATABASES;
Wyjście:
+--------------------+ | Database | +--------------------+ | information_schema | | demo | | exampledb | | mysql | | performance_schema | | test | +--------------------+
Teraz widzimy, że wymieniona jest również nowo utworzona baza danych o nazwie „exampledb”.
- Alternatywą dla polecenia CREATE DATABASE jest CREATE SCHEMA COMMAND . Oba zapytania wykonują to samo zadanie tworzenia bazy danych.
Składnia:
CREATE SCHEMA DATABASENAME;
Przykład: Użyjemy alternatywnego zapytania, aby utworzyć bazę danych o nazwie „testDB”.
mysql> CREATE SCHEMA testDB;
Przykład: Wyświetlimy wszystkie dostępne bazy danych, aby sprawdzić, czy baza danych „testdb” została utworzona, czy nie.
mysql> SHOW DATABASES;
Wyjście
+--------------------+ | Database | +--------------------+ | information_schema | | demo | | exampledb | | mysql | | performance_schema | | test | | testdb | +--------------------+ 7 rows in set (0.05 sec)
- Można również przejrzeć już utworzoną bazę danych za pomocą poniższego polecenia:
SHOW CREATE DATABASE DATABASE_NAME;
Przykład:
We will review the already created database named as “exampledb”. mysql> SHOW CREATE DATABASE exampledb;
Wyjście:
+------------+-----------------------------------------------------------------------+ | Database | Create Database | +------------+-----------------------------------------------------------------------+ | exampledb | CREATE DATABASE ` exampledb ` /*!40100 DEFAULT CHARACTER SET latin1 */ | +------------+-----------------------------------------------------------------------+ 1 row in set (0.00 sec)
Tutaj wyświetlane jest polecenie, które zostało użyte do utworzenia bazy danych o nazwie „exampledb” wraz z zestawem znaków. Ponieważ zestaw znaków nie został określony podczas tworzenia bazy danych, baza danych jest tworzona z domyślnym zestawem znaków, tj. latin1 .
- Aby przechowywać dane w określonej bazie danych, należy poinformować serwer, której konkretnej bazy danych administrator chce użyć.
Składnia:
USE DATABASE_NAME;
Przykład:
Aby operować na określonej bazie danych, użytkownik musi poinformować serwer, że chce wykonać dalsze zapytania na „exampledb”.
mysql> USE exampledb;
Wyjście:
Database changed
Ponieważ używaliśmy bazy danych o nazwie „exampledb”, wszystkie dalsze zapytania będą teraz obsługiwane w tej konkretnej bazie danych.
Parametry instrukcji CREATE
Można również improwizować zapytanie CREATE DATABASE, dodając do niego parametry i specyfikacje.
- JEŚLI NIE ISTNIEJE
Na jednym serwerze MySQL może znajdować się wiele baz danych. Można spróbować stworzyć bazę danych, która jest już obecna na serwerze MySQL. Tak więc w takim przypadku użycie parametru „IF NOT EXISTS” z zapytaniem CREATE DATABASE służy temu celowi. Przed utworzeniem nowej bazy danych instruuje serwer, aby sprawdził, czy baza danych o określonej nazwie już istnieje.
Składnia:
CREATE DATABASE IF NOT EXISTS DATABASENAME;
Przykład:
Aby utworzyć nową bazę danych „demodb”, najpierw wyświetlimy wszystkie dostępne bazy danych, a następnie utworzymy „demodb”, jeśli baza danych o tej nazwie jeszcze nie istnieje.
mysql> SHOW DATABASES;
Wyjście:
+--------------------+ | 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)
Wcześniej nie istniała baza danych o nazwie „demodb”. Tak więc teraz zostanie utworzona baza danych o nazwie „demodb”. Jeśli spróbujemy stworzyć bazę danych z istniejącą nazwą bez użycia opcji IF NOT EXISTS, wówczas SQL wygeneruje błąd.
Przykład:
Teraz wyświetlimy wszystkie dostępne bazy danych, aby upewnić się, że baza danych „demodb” została utworzona.
mysql> SHOW DATABASES;
Wyjście:
+--------------------+ | Database | +--------------------+ | information_schema | | demo | | demodb | | exampledb | | mysql | | performance_schema | | test | | testdb | +--------------------+ 8 rows in set (0.00 sec)
Tutaj tworzona jest baza danych o nazwie „demodb”.
- Składanie i zestaw znaków
Sortowanie to zestaw reguł przydatnych do porównań. Dane SQL można przechowywać w innym języku niż angielski. Aby przechowywać dane w innym języku, musisz wybrać zestaw znaków dla tego konkretnego języka. Różne poziomy zestawu znaków obejmują serwer, bazę danych, tabelę i kolumnę. Po wybraniu zestawu znaków można wybrać tylko zasady sortowania.
Przykład:
Utworzymy nową bazę danych o nazwie „sample”, której zestaw znaków to „latin1”, a reguła sortowania to „latin1_swedish_ci”.
mysql> CREATE DATABASE IF NOT EXISTS sample CHARACTER SET latin1 COLLATE latin1_swedish_ci;
Tutaj „przykładowa” baza danych jest tworzona z latin1 jako zestawem znaków i latin1_swedish_ci jako regułą sortowania.