Jak utworzyć bazę danych w MySQL (Tworzyć MySQL Tabele)

Kroki tworzenia bazy danych w MySQL

Utwórz bazę danych na dwa sposoby

1) Wykonując proste zapytanie SQL

2) Korzystając z inżynierii przyszłości w MySQL Workbench

As Początkujący SQL, przyjrzyjmy się najpierw metodzie zapytania.

Jak utworzyć bazę danych w MySQL

Oto jak utworzyć bazę danych w MySQL:

CREATE DATABASE to polecenie SQL używane do tworzenia bazy danych w MySQL.

Wyobraź sobie, że musisz utworzyć bazę danych o nazwie „filmy”. Możesz stworzyć bazę danych w MySQL wykonując następujące polecenie SQL.

CREATE DATABASE movies;

Uwaga: możesz także użyć polecenia CREATE SCHEMA zamiast CREATE DATABASE

Teraz udoskonalmy nasze zapytanie SQL, dodając więcej parametrów i specyfikacji.

JEŚLI NIE ISTNIEJE

Pojedynczy MySQL serwer może mieć wiele baz danych. Jeśli nie jesteś jedyną osobą uzyskującą dostęp do tego samego MySQL serwerze lub jeśli masz do czynienia z wieloma bazami danych, istnieje prawdopodobieństwo próby utworzenia nowej bazy danych o nazwie istniejącej bazy danych. JEŚLI NIE ISTNIEJE pozwól ci pouczać MySQL serwerowi, aby przed utworzeniem bazy danych sprawdził istnienie bazy danych o podobnej nazwie.

Kiedy JEŚLI NIE ISTNIEJE jest używana, baza danych jest tworzona tylko wtedy, gdy podana nazwa nie koliduje z nazwą istniejącej bazy danych. Bez użycia JEŚLI NIE ISTNIEJE MySQL wyrzuca błąd.

CREATE DATABASE IF NOT EXISTS movies;

Sortowanie i zestaw znaków

Porównanie jest zestaw zasady stosowane w porównaniu.Wiele osób korzysta z MySQL do przechowywania danych w języku innym niż angielski. Dane są przechowywane w MySQL używając określonego zestawu znaków. Zestaw znaków może być zdefiniowany na różnych poziomach, tj. serwer, baza danych, tabela i kolumny.

Musisz wybrać zasady sortowania, które z kolei zależą od wybranego zestawu znaków.

Na przykład zestaw znaków Latin1 używa latin1_swedish_ci sortowanie, które jest szwedzkim porządkiem nieuwzględniającym wielkości liter.

CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci

Najlepszą praktyką podczas używania języków lokalnych, takich jak arabski, chiński itp., jest wybranie zestawu znaków Unicode (utf-8), który ma kilka zestawień, lub po prostu trzymanie się domyślnego sortowania utf8-general-ci.

Możesz znaleźć listę wszystkich zestawień i zestawów znaków w tym miejscu

Listę istniejących baz danych możesz zobaczyć uruchamiając następujące polecenie SQL.

SHOW DATABASES

Jak utworzyć tabelę w MySQL

Polecenie CREATE TABLE służy do tworzenia tabel w bazie danych

Utwórz tabelę w MySQL

Tabele można tworzyć za pomocą UTWÓRZ TABELĘ oświadczenie, które ma następującą składnię.

CREATE  TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;

TUTAJ

  • „CREATE TABLE” odpowiada za utworzenie tabeli w bazie danych.
  • „[JEŚLI NIE ISTNIEJE]” jest opcjonalne i utwórz tabelę tylko wtedy, gdy nie zostanie znaleziona pasująca nazwa tabeli.
  • „Nazwapola” to nazwa pola, a „typ danych” określa charakter danych, które mają być przechowywane w polu.
  • „[parametry opcjonalne]” dodatkowe informacje o polu, takie jak „AUTO_INCREMENT”, NOT NULL itp.

MySQL Utwórz przykład tabeli

Poniżej znajduje MySQL przykład utworzenia tabeli w bazie danych:

CREATE  TABLE IF NOT EXISTS `MyFlixDB`.`Members` (
  `membership_number` INT  AUTOINCREMENT ,
  `full_names` VARCHAR(150) NOT NULL ,
  `gender` VARCHAR(6) ,
  `date_of_birth` DATE ,
  `physical_address` VARCHAR(255) ,
  `postal_address` VARCHAR(255) ,
  `contact_number` VARCHAR(75) ,
  `email` VARCHAR(255) ,
  PRIMARY KEY (`membership_number`) )
ENGINE = InnoDB;

Zobaczmy teraz, co MySQLtypy danych to. Możesz użyć dowolnego z nich w zależności od potrzeb. Tworząc bazę danych, należy zawsze starać się nie niedoceniać ani nie przeceniać potencjalnego zakresu danych.

TYPY DANYCH

Typy danych definiują charakter danych, które mogą być przechowywane w określonej kolumnie tabeli

MySQL ma 3 główne kategorie typów danych, a mianowicie

  1. numeryczny,
  2. Tekst
  3. Data/czas.

Liczbowe typy danych

Numeryczne typy danych służą do przechowywania wartości numerycznych. Bardzo ważne jest, aby upewnić się, że zakres danych mieści się pomiędzy dolną i górną granicą typów danych numerycznych.

MAŁAINT( ) -128 do 127 w normie
0 do 255 BEZ PODPISU.
MAŁAINT( ) -32768 do 32767 w normie
0 do 65535 BEZ PODPISU.
ŚREDNI MIĘTOWY( ) -8388608 do 8388607 w normie
0 do 16777215 BEZ PODPISU.
LCAŁK( ) -2147483648 do 2147483647 w normie
0 do 4294967295 BEZ PODPISU.
DUŻY INT( ) -9223372036854775808 do 9223372036854775807 w normie
0 do 18446744073709551615 BEZ PODPISU.
FLOAT Mała przybliżona liczba ze zmiennym przecinkiem dziesiętnym.
PODWÓJNY( , ) Duża liczba ze zmiennym przecinkiem dziesiętnym.
DZIESIĘTNE( , ) DOUBLE zapisany jako ciąg znaków, umożliwiający stały przecinek dziesiętny. Wybór do przechowywania wartości walutowych.

Typy danych tekstowych

Jak sugeruje nazwa kategorii typu danych, służą one do przechowywania wartości tekstowych. Zawsze upewnij się, że długość danych tekstowych nie przekracza maksymalnej długości.

ZNAK( ) Stała sekcja o długości od 0 do 255 znaków.
WARCHAR( ) Sekcja zmienna o długości od 0 do 255 znaków.
MAŁYTEKST Ciąg o maksymalnej długości 255 znaków.
TEKST Ciąg o maksymalnej długości 65535 znaków.
KROPELKA Ciąg o maksymalnej długości 65535 znaków.
ŚREDNI TEKST Ciąg o maksymalnej długości 16777215 znaków.
ŚREDNIA BLOBA Ciąg o maksymalnej długości 16777215 znaków.
DŁUGITEKST Ciąg o maksymalnej długości 4294967295 znaków.
DŁUGI BLOB Ciąg o maksymalnej długości 4294967295 znaków.

Data / godzina

DATA RRRR-MM-DD
DATA GODZINA RRRR-MM-DD GG: MM: SS
ZNAK CZASU YYYYMMDDHHMMSS
CZAS GG:MM:SS

Oprócz powyższego istnieje kilka innych typów danych MySQL.

WYLICZENIE Do przechowywania wartości tekstowej wybranej z listy predefiniowanych wartości tekstowych
SET Służy także do przechowywania wartości tekstowych wybranych z listy predefiniowanych wartości tekstowych. Może mieć wiele wartości.
BOOL Synonim TINYINT(1), używany do przechowywania wartości logicznych
BINARY Podobnie jak w przypadku CHAR, różnica polega na tym, że teksty są przechowywane w formacie binarnym.
WARBINARNE Podobnie jak w przypadku VARCHAR, różnica polega na tym, że teksty są przechowywane w formacie binarnym.

Przyjrzyjmy się teraz zapytaniu umożliwiającemu utworzenie tabeli zawierającej dane wszystkich typów. Przeanalizuj to i określ, jak każdy typ danych jest zdefiniowany w poniższej tabeli tworzenia MySQL przykład.

CREATE TABLE`all_data_types` (
    `varchar` VARCHAR( 20 )  ,
    `tinyint` TINYINT  ,
    `text` TEXT  ,
    `date` DATE  ,
    `smallint` SMALLINT  ,
    `mediumint` MEDIUMINT  ,
    `int` INT  ,
    `bigint` BIGINT  ,
    `float` FLOAT( 10, 2 )  ,
    `double` DOUBLE  ,
    `decimal` DECIMAL( 10, 2 )  ,
    `datetime` DATETIME  ,
    `timestamp` TIMESTAMP  ,
    `time` TIME  ,
    `year` YEAR  ,
    `char` CHAR( 10 )  ,
    `tinyblob` TINYBLOB  ,
    `tinytext` TINYTEXT  ,
    `blob` BLOB  ,
    `mediumblob` MEDIUMBLOB  ,
    `mediumtext` MEDIUMTEXT  ,
    `longblob` LONGBLOB  ,
    `longtext` LONGTEXT  ,
    `enum` ENUM( '1', '2', '3' )  ,
    `set` SET( '1', '2', '3' )  ,
    `bool` BOOL  ,
    `binary` BINARY( 20 )  ,
    `varbinary` VARBINARY( 20 )
) ENGINE= MYISAM ;

Najlepsze praktyki

  • W przypadku słów kluczowych SQL używaj wielkich liter, np. „USUŃ SCHEMAT JEŚLI ISTNIEJE `MyFlixDB`;”
  • Zakończ wszystkie polecenia SQL, używając średników.
  • Unikaj używania spacji w nazwach schematów, tabel i pól. Zamiast tego używaj podkreśleń, aby oddzielić nazwy schematów, tabel lub pól.

Jak stworzyć MySQL diagram ER stołu warsztatowego, inżynieria przyszłości

MySQL Workbench posiada narzędzia wspierające inżynierię przyszłości. Inżynieria przyszłości to termin techniczny, który opisuje proces automatyczne tłumaczenie modelu logicznego na fizyczne narzędzie.

Stworzyliśmy Schemat ER na nasze Samouczek modelowania ER. Będziemy teraz używać tego modelu ER do generowania skryptów SQL, które utworzą naszą bazę danych.

Tworzenie bazy danych MyFlix z modelu MyFlix ER

Krok 1) Otwarty model ER bazy danych MyFlix

Otwórz model ER bazy danych MyFlix, który utworzyłeś we wcześniejszym samouczku.

Krok 2) Wybierz inżyniera przyszłości

Kliknij menu bazy danych. Wybierz inżyniera przyszłości

Stwórz MySQL Schemat ER stołu warsztatowego

Krok 3) Opcje połączenia

Kolejne okno pozwala na połączenie się z instancją MySQL serwer. Kliknij listę rozwijaną zapisanych połączeń i wybierz host lokalny. Kliknij Wykonaj

Stwórz MySQL Schemat ER stołu warsztatowego

Krok 4) Wybierz opcje pokazane poniżej

Wybierz opcje pokazane poniżej w wyświetlonym kreatorze. Kliknij Następny

Stwórz MySQL Schemat ER stołu warsztatowego

Krok 5) Zachowaj ustawienia domyślne i kliknij Dalej

Następny ekran pokazuje podsumowanie obiektów na naszym diagramie EER. Nasza baza danych MyFlix ma 5 tabel. Zachowaj ustawienia domyślne i kliknij Dalej.

Stwórz MySQL Schemat ER stołu warsztatowego

Krok 6) Revspójrz na skrypt SQL

Pojawi się okno pokazane poniżej. To okno umożliwia podgląd pliku Skrypt SQL do stworzenia naszej bazy danych. Skrypty możemy zapisać do pliku *.sql lub skopiować do schowka. Kliknij przycisk Dalej

Stwórz MySQL Schemat ER stołu warsztatowego

Krok 7) Potwierdź postęp

Po pomyślnym utworzeniu bazy danych na wybranym obiekcie pojawi się poniższe okno MySQL instancja serwera.

Stwórz MySQL Schemat ER stołu warsztatowego

  • Tworzenie bazy danych polega na przełożeniu logicznego modelu projektu bazy danych na fizyczną bazę danych.
  • MySQL obsługuje wiele typów danych dla wartości liczbowych, dat i ciągów znaków.
  • Komenda CREATE DATABASE służy do tworzenia bazy danych
  • Polecenie CREATE TABLE służy do tworzenia tabel w bazie danych
  • MySQL workbench obsługuje inżynierię przyszłości, która polega na automatycznym generowaniu skryptów SQL na podstawie logicznego modelu bazy danych, które można wykonać w celu utworzenia fizycznej bazy danych

W załączeniu baza danych wraz z danymi fikcyjnymi. Będziemy używać tej bazy danych we wszystkich naszych dalszych tutorialach. Prosty import bazy danych MySQL Stół warsztatowy na początek

Kliknij tutaj, aby pobrać MyFlixDB

Podsumuj ten post następująco: