Koraci za stvaranje baze podataka u MySQL-u
Stvorite bazu podataka na dva načina
1) Izvođenjem jednostavnog SQL upita
2) Korištenjem inženjeringa unaprijed u MySQL Workbenchu
U ovom SQL vodiču naučit ćete-
- Kako stvoriti bazu podataka
- Kako stvoriti tablicu u MySQL-u
- Tipovi podataka
- MySQL radni stol ER dijagram naprijed Inženjering
Kao početnici SQL-a, pogledajmo prvo metodu upita.
Kako stvoriti bazu podataka
Evo kako stvoriti bazu podataka u MySQL:
CREATE DATABASE je SQL naredba koja se koristi za stvaranje baze podataka u MySQL-u.
Zamislite da trebate stvoriti bazu podataka s nazivom "filmovi". Možete stvoriti bazu podataka u MySQL-u izvršavanjem sljedeće SQL naredbe.
CREATE DATABASE movies;
Napomena: također možete koristiti naredbu CREATE SCHEMA umjesto CREATE DATABASE
Sada poboljšajmo naš SQL upit dodavanjem dodatnih parametara i specifikacija.
AKO NE POSTOJI
Jedan MySQL poslužitelj može imati više baza podataka. Ako niste jedini koji pristupa istom MySQL poslužitelju ili ako imate posla s više baza podataka, postoji vjerojatnost pokušaja stvaranja nove baze podataka s imenom postojeće baze podataka. AKO NE POSTOJI, dopustite vam da uputite MySQL poslužitelj da provjeri postojanje baze podataka sa sličnim imenom prije stvaranja baze podataka.
Kada se koristi AKO NE POSTOJI , baza podataka kreira se samo ako dato ime nije u sukobu s imenom postojeće baze podataka. Bez upotrebe AKO NE POSTOJI MySQL dovodi do pogreške.
CREATE DATABASE IF NOT EXISTS movies;
Skupljanje i skup znakova
Poredak je skup pravila koja se koriste u usporedbi. Mnogi ljudi koriste MySQL za pohranu podataka koji nisu engleski. Podaci se pohranjuju u MySQL koristeći određeni skup znakova. Skup znakova može se definirati na različitim razinama, na primjer poslužitelju, bazi podataka, tablici i stupcima.
Morate odabrati pravila uspoređivanja koja pak ovise o odabranom skupu znakova.
Na primjer, skup znakova Latin1 koristi znak
latin1_swedish_ci
sortiranje što je švedski poredak koji ne razlikuje velika i mala slova.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Najbolja praksa tijekom korištenja lokalnih jezika kao što su arapski, kineski itd. Je odabir Unicode (utf-8) skupa znakova koji ima nekoliko poredavanja ili se jednostavno pridržava zadanog uspoređivanja utf8-general-ci.
Popis svih poredavanja i skupova znakova možete pronaći ovdje
Popis postojećih baza podataka možete vidjeti pokretanjem sljedeće SQL naredbe.
SHOW DATABASES
Kako stvoriti tablicu u MySQL-u
Naredba CREATE TABLE koristi se za stvaranje tablica u bazi podataka
Tablice se mogu kreirati pomoću izraza CREATE TABLE i on zapravo ima sljedeću sintaksu.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
OVDJE
- "CREATE TABLE" je onaj odgovoran za stvaranje tablice u bazi podataka.
- "[AKO NE POSTOJI]" nije obavezno i kreirajte tablicu samo ako nije pronađeno odgovarajuće ime tablice.
- "` fieldName` "je naziv polja, a" data type "definira prirodu podataka koji će biti pohranjeni u polju.
- "[neobavezni parametri]" dodatne informacije o polju kao što je "AUTO_INCREMENT", NE NULL itd.
Primjer izrade MySQL tablice
Ispod je MySQL primjer za stvaranje tablice u bazi podataka:
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;
Sada da vidimo koji su MySQL-ovi tipovi podataka. Možete koristiti bilo koji od njih, ovisno o vašim potrebama. Uvijek biste trebali pokušati ne stvarati bazu podataka da ne podcijenite ili precijenite potencijalni raspon podataka.
VRSTE PODATAKA
Tipovi podataka definiraju prirodu podataka koji se mogu pohraniti u određeni stupac tablice
MySQL ima 3 glavne kategorije tipova podataka, naime
- Numerički,
- Tekst
- Datum vrijeme.
Numerički tipovi podataka
Numeričke vrste podataka koriste se za pohranu numeričkih vrijednosti. Vrlo je važno osigurati da se raspon vaših podataka nalazi između donje i gornje granice numeričkih vrsta podataka.
TINYINT () | -128 do 127 normalno 0 do 255 POTPISANO. |
SMAJLICA () | -32768 do 32767 normalno 0 do 65535 POTPISANO. |
SREDNJI () | -8388608 do 8388607 normalno 0 do 16777215 NEPOTPISANO. |
INT () | -2147483648 do 2147483647 normalno 0 do 4294967295 NEPOTPISANO. |
VELIKO () | -9223372036854775808 do 9223372036854775807 normalno 0 do 18446744073709551615 NEPOTPISANO. |
PLUTATI | Mali približni broj s plutajućom decimalnom zarezom. |
DVOSTRUKO( , ) | Veliki broj s plutajućom decimalnom zarezom. |
DECIMAL( , ) | DUPL pohranjen kao niz, omogućujući fiksnu decimalnu točku. Izbor za pohranu valuta. |
Vrste tekstualnih podataka
Kao što naziv kategorije podataka implicira, oni se koriste za pohranu tekstualnih vrijednosti. Uvijek pazite da duljina vaših tekstualnih podataka ne prelazi maksimalnu duljinu.
CHAR () | Fiksni odjeljak dug od 0 do 255 znakova. |
VARCHAR () | Promjenjivi odjeljak dug od 0 do 255 znakova. |
TINYTEXT | Niz maksimalne duljine 255 znakova. |
TEKST | Niz maksimalne duljine 65535 znakova. |
BLOB | Niz maksimalne duljine 65535 znakova. |
SREDNJI TEKST | Niz maksimalne duljine 16777215 znakova. |
SREDNJOKLOB | Niz maksimalne duljine 16777215 znakova. |
DUGI TEKST | Niz maksimalne duljine 4294967295 znakova. |
LONGBLOB | Niz maksimalne duljine 4294967295 znakova. |
Datum vrijeme
DATUM | GGGG-MM-DD |
DATUM VRIJEME | GGGG-MM-DD HH: MM: SS |
VREMENSKI KAMP | GGGGMMDDHHMMSS |
VRIJEME | HH: MM: SS |
Osim gore navedenog, postoje neke druge vrste podataka u MySQL-u.
ENUM | Za spremanje tekstualne vrijednosti odabrane s popisa unaprijed definiranih tekstualnih vrijednosti |
SET | Također se koristi za spremanje tekstualnih vrijednosti odabranih s popisa unaprijed definiranih tekstualnih vrijednosti. Može imati više vrijednosti. |
BOOL | Sinonim za TINYINT (1), koristi se za pohranu logičkih vrijednosti |
BINARNI | Slično CHAR-u, razlika je u tome što se tekstovi pohranjuju u binarnom formatu. |
VARBINARSKA | Slično VARCHAR-u, razlika je u tome što se tekstovi pohranjuju u binarnom formatu. |
Sada ćemo vidjeti upit za stvaranje tablice koja sadrži podatke svih vrsta podataka. Proučite ga i prepoznajte kako je definiran svaki tip podataka u primjeru MySQL izrade tablice u nastavku.
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 ;
Najbolje prakse
- Koristite velika slova za ključne riječi SQL, tj. "DROP SHEM AKO POSTOJI` MyFlixDB`; "
- Završite sve svoje SQL naredbe pomoću dvotačke.
- Izbjegavajte upotrebu razmaka u nazivima shema, tablica i polja. Umjesto toga koristite donje crte za odvajanje naziva sheme, tablice ili polja.
MySQL radni stol ER dijagram unaprijed inženjering
MySQL radni stol ima uslužne programe koji podržavaju napredni inženjering. Terminsko inženjerstvo je tehnički pojam koji opisuje postupak automatskog prevođenja logičkog modela u fizički uređaj .
Stvorili smo ER dijagram na našem vodiču za modeliranje ER. Sada ćemo taj ER model koristiti za generiranje SQL skripti koje će stvoriti našu bazu podataka.
Izrada baze podataka MyFlix iz modela MyFlix ER
1. Otvorite ER model MyFlix baze podataka koji ste kreirali u ranijem vodiču.
2. Kliknite izbornik baze podataka. Odaberite inženjera prema naprijed
3. Sljedeći prozor omogućuje vam povezivanje s instancom MySQL poslužitelja. Kliknite padajući popis pohranjene veze i odaberite lokalnog domaćina. Kliknite Izvrši
4. Odaberite opcije prikazane dolje u čarobnjaku koji će se pojaviti. Kliknite Dalje
5. Sljedeći zaslon prikazuje sažetak objekata u našem EER dijagramu. Naš MyFlix DB ima 5 tablica. Neka odabiri budu zadani i kliknite Dalje.
6 ... Pojavljuje se prozor prikazan dolje. Ovaj prozor omogućuje pregled SQL skripte za stvaranje naše baze podataka. Skripte možemo spremiti u datoteku * .sql "ili ih kopirati u međuspremnik. Kliknite sljedeći gumb
7. Prozor prikazan u nastavku pojavljuje se nakon uspješnog stvaranja baze podataka na odabranoj instanci MySQL poslužitelja.
Sažetak
- Stvaranje baze podataka uključuje prevođenje logičkog modela dizajna baze podataka u fizičku bazu podataka.
- MySQL podržava brojne tipove podataka za numeričke, datume i vrijednosti nizova.
- Naredba CREATE DATABASE koristi se za stvaranje baze podataka
- Naredba CREATE TABLE koristi se za stvaranje tablica u bazi podataka
- MySQL radni stol podržava unaprijed inženjering koji uključuje automatsko generiranje SQL skripti iz logičkog modela baze podataka koje se mogu izvršiti za stvaranje fizičke baze podataka
Baza podataka zajedno s glupim podacima je u privitku. Koristit ćemo ovaj DB za sve naše daljnje vodiče. Za početak jednostavno uvezite DB u MySQL Workbench
Kliknite ovdje za preuzimanje MyFlixDB