Kuinka luoda tietokanta sisään MySQL (Luoda MySQL Taulukot)
⚡ Älykäs yhteenveto
Tietokannan luominen sisään MySQL seuraa kahta hyväksi havaittua polkua: CREATE DATABASE -lausekkeen suorittaminen tai fyysisten skeemien luominen ER-mallista MySQL Työpöydän suunnittelu eteenpäin. Molemmat lähestymistavat tuottavat identtiset, tuotantovalmiit taulukot.

Tietokannan luomisen vaiheet MySQL
Tietokanta MySQL on nimetty säilö taulukoille, näkymille ja niihin liittyville objekteille. Voit luoda sellaisen kahdella tavalla:
1) Suorittamalla yksinkertainen SQL-kysely
2) Käyttämällä eteenpäin suuntautuvaa suunnittelua MySQL Työpöytä
As SQL-aloittelija, tarkastellaan ensin kyselymenetelmää.
Kuinka luoda tietokanta sisään MySQL
Näin luot tietokannan MySQL:
CREATE DATABASE on SQL-komento, jota käytetään tietokannan luomiseen MySQL.
Kuvittele, että sinun on luotava tietokanta nimeltä ”elokuvat”. Voit luoda tietokannan kohdassa MySQL suorittamalla seuraavan SQL-komennon.
CREATE DATABASE movies;
Huomautus: Voit käyttää myös komentoa CREATE SCHEMA komentoa CREATE DATABASE -komennon sijaan.
Lauseke toimii vain kerran. Sen suorittaminen uudelleen aiheuttaa virheen, joten parannetaan kyselyä lisäämällä parametreja.
JOS EI OLE OLEMASSA
Yksi MySQL Palvelin voi sisältää useita tietokantoja. Kun useat ihmiset jakavat palvelimen, voit yrittää luoda tietokannan olemassa olevan nimellä.
JOS EI OLE OLEMASSA ohjeistaa MySQL palvelimen tarkistamaan samannimisen tietokannan olemassaolon ennen sen luomista. Tietokanta luodaan vain, jos nimi on vapaa; ilman tätä lauseketta MySQL antaa virheen.
CREATE DATABASE IF NOT EXISTS movies;
Kun tietokannan nimi on turvallinen, seuraavaksi päätetään, miten MySQL pitäisi tallentaa ja vertailla sen sisällä olevaa tekstiä.
Lajittelu ja merkistö
A merkistö määrittää, mitä merkkejä sarake voi tallentaa, kun taas a vertailu on joukko vertailussa käytetyt säännöt ja lajittelu. Molemmat voidaan määritellä neljällä tasolla: palvelin, tietokanta, taulukko ja sarake.
Valitsemasi lajittelu riippuu merkistöstä. Esimerkiksi latin1-merkistö käyttää latin1_swedish_ci lajittelu, joka on ruotsalainen kirjainkokoa huomioimaton järjestys.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci;
Valitse paikallisille kielille, kuten arabialle tai kiinalle, Unicode utf8mb4 merkistö, joka tallentaa kaikki Unicode-merkit, mukaan lukien emojit. MySQL 8.0, utf8mb4 on oletusmerkistö ja utf8mb4_0900_ai_ci oletuslajittelu.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
Löydät luettelon kaikista lajitteluista ja merkistöistä täältä.
Voit tarkastella olemassa olevien tietokantojen luetteloa suorittamalla seuraavan SQL-komennon.
SHOW DATABASES;
Kun tietokanta on paikallaan, voit nyt lisätä taulukot, jotka todellisuudessa sisältävät tietueet.
Kuinka luoda taulukko sisään MySQL
CREATE TABLE -komentoa käytetään taulukoiden luomiseen tietokantaan.
Kuten kaaviosta näkyy, jokainen taulukko kuuluu yhteen tietokantaan. Taulukot luodaan Luo taulukko lauseke, jolla on seuraava syntaksi.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
TÄÄLTÄ
- ”CREATE TABLE” vastaa taulukon luomisesta tietokantaan.
- ”[IF NOT EXISTS]” on valinnainen ja luo taulukon vain, jos vastaavaa taulukon nimeä ei löydy.
- ”`fieldName`” on kentän nimi ja ”data Type” määrittää siihen tallennettujen tietojen luonteen.
- ”[valinnaiset parametrit]” on kentän lisätietoja, kuten ”AUTO_INCREMENT” tai NOT NULL.
- ”Storage Engine” hallinnoi taulukkoa, yleensä InnoDB, joka tukee tapahtumia ja viiteavaimia.
MySQL Luo esimerkkitaulukko
Alla on a MySQL esimerkki taulukon luomisesta tietokantaan:
CREATE TABLE IF NOT EXISTS `MyFlixDB`.`Members` ( `membership_number` INT AUTO_INCREMENT , `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;
Huomautus: oikea MySQL avainsana on AUTO_INCREMENT alaviivalla. AUTOINCREMENT kuuluu SQLite ja aiheuttaa syntaksivirheen kohdassa MySQL.
Jokaisella sarakkeella on tietotyyppi, joten valitse huolellisesti: älä aliarvioi äläkä yliarvioi odottamaasi tietoaluetta.
MySQL Tietotyypit
Tietotyypit määrittelevät, minkä tyyppisiä tietoja voidaan tallentaa taulukon tiettyyn sarakkeeseen.
MySQL on 3 pääasialliset tietotyyppien luokat, nimittäin:
- Numeerinen
- teksti
- Treffiaika
Numeeriset tietotyypit
Numeerisia tietotyyppejä käytetään numeeristen arvojen tallentamiseen. On erittäin tärkeää varmistaa, että tietojesi alue on valitsemasi numeerisen tietotyypin ala- ja ylärajojen välissä.
| TINYINT( ) | -128 - 127 normaali 0 numeroon 255 ALLEKIRJOITTAMATTA. |
| PIENI ( ) | -32768 - 32767 normaali 0 numeroon 65535 ALLEKIRJOITTAMATTA. |
| MEDIUMINT( ) | -8388608 - 8388607 normaali 0 numeroon 16777215 ALLEKIRJOITTAMATTA. |
| INT( ) | -2147483648 - 2147483647 normaali 0 numeroon 4294967295 ALLEKIRJOITTAMATTA. |
| BIGINT( ) | -9223372036854775808 - 9223372036854775807 normaali 0 numeroon 18446744073709551615 ALLEKIRJOITTAMATTA. |
| FLOAT | Pieni likimääräinen luku, jossa on kelluva desimaalipilkku. |
| DOUBLE( , ) | Suuri luku, jossa on kelluva desimaalipilkku. |
| DESIMAALI( , ) | Merkkijonona tallennettu KAKSINKERTAINEN, kiinteän desimaalipilkun sisältävä vaihtoehto. Valinta valuutta-arvojen tallentamiseen. |
Tekstitietotyypit
Kuten tietotyypin luokan nimi viittaa, näitä käytetään tekstiarvojen tallentamiseen. Varmista aina, että tekstitietojesi pituus ei ylitä sarakkeen enimmäispituutta.
| CHAR( ) | Kiinteä osa, jonka pituus on 0–255 merkkiä. |
| VARCHAR( ) | Muuttuva osa, jonka pituus on 0–255 merkkiä. |
| TINYTEKSTI | Merkkijono, jonka enimmäispituus on 255 merkkiä. |
| TEKSTI | Merkkijono, jonka enimmäispituus on 65535 merkkiä. |
| BLOB | Merkkijono, jonka enimmäispituus on 65535 merkkiä. |
| MEDIUM TEKSTI | Merkkijono, jonka enimmäispituus on 16777215 merkkiä. |
| MEDIUM BLOB | Merkkijono, jonka enimmäispituus on 16777215 merkkiä. |
| PITKÄ TEKSTI | Merkkijono, jonka enimmäispituus on 4294967295 merkkiä. |
| LONGBLOB | Merkkijono, jonka enimmäispituus on 4294967295 merkkiä. |
Päivämäärä- ja aikatietotyypit
Päivämäärä- ja aikatietotyypit tallentavat kalenteri- ja kelloarvot kiinteässä muodossa, mikä pitää lajittelun ja vertailun luotettavana.
| DATE | VVVV-KK-PP |
| TREFFIAIKA | VVVV-KK-PP PP: KK: SS |
| AIKALEIMA | vvvvkkppttmmss |
| AIKA | HH: MM: SS |
Muut tietotyypit
Yllä mainittujen lisäksi on olemassa joitakin muita tietotyyppejä, MySQL.
| ENUM | Tekstiarvon tallentaminen ennalta määritettyjen tekstiarvojen luettelosta |
| SARJA | Tätä käytetään myös ennalta määritettyjen tekstiarvojen luettelosta valittujen tekstiarvojen tallentamiseen. Sillä voi olla useita arvoja. |
| BOOL | Synonyymi sanalle TINYINT(1), jota käytetään Boolen arvojen tallentamiseen |
| BINÄÄRI | Samanlainen kuin CHAR; ero on siinä, että tekstit tallennetaan binäärimuodossa. |
| VARBINAARINEN | Samanlainen kuin VARCHAR; ero on siinä, että tekstit tallennetaan binäärimuodossa. |
Katsotaanpa nyt kyselyä taulukon luomiseksi, joka käyttää kaikkia tietotyyppejä. Tutki sitä ja tunnista, miten kukin tietotyyppi on määritelty alla olevassa luontitaulukossa. MySQL esimerkki.
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;
Parhaat käytännöt luomiseen a MySQL tietokanta
Muutamat käytännöt pitävät skriptisi luettavina:
- Käytä SQL-avainsanoissa isoja kirjaimia, esim. “DROP SCHEMA IF EXISTS `MyFlixDB`;”
- Lopeta kaikki SQL-komennot puolipisteillä.
- Vältä välilyöntien käyttöä skeemien, taulukoiden ja kenttien nimissä. Käytä sen sijaan alaviivoja erottamaan skeemien, taulukoiden tai kenttien nimet.
- Suosi InnoDB:tä MyISAMin sijaan uusille taulukoille, koska InnoDB tukee tapahtumia, rivitason lukitusta ja viiteavaimia.
Kyselymetodi on valmis. Toinen reitti saavuttaa saman tietokannan visuaalisen mallin kautta käsin kirjoitetun SQL:n sijaan.
Kuinka luoda MySQL Työpöydän ER-kaavio Forward Engineering
MySQL Työpöytä on apuohjelmia, jotka tukevat eteenpäin suuntautuvaa suunnittelua. Suunnittelu eteenpäin on tekninen termi, joka kuvaa prosessia, jossa loogisen mallin automaattinen kääntäminen fyysiseksi toteutukseksi.
Loimme an ER-kaavio meidän ER-mallinnus oppitunti. Käytämme nyt tätä ER-mallia luodaksemme SQL-skriptit, jotka luovat tietokantaamme.
MyFlix-tietokannan luominen MyFlix ER -mallista
Vaihe 1) Avaa MyFlix-tietokannan ER-malli jonka loit aiemmin.
Vaihe 2) Valitse eteenpäinohjaaja
Napsauta Tietokanta-valikkoa ja valitse Eteenpäin insinööri.
Vaihe 3) Yhteysvaihtoehdot
Seuraavassa ikkunassa voit muodostaa yhteyden instanssiin MySQL palvelin. Napsauta tallennettujen yhteyksien avattavaa luetteloa ja valitse paikallinen isäntä. Napsauta Suorita.
Vaihe 4) Valitse alla näkyvät vaihtoehdot
Valitse avautuvassa ohjatussa toiminnossa alla näkyvät vaihtoehdot. Napsauta Seuraava.
Vaihe 5) Pidä valinnat oletusarvoisina ja napsauta Seuraava
Seuraava näyttö näyttää EER-kaaviomme objektien yhteenvedon. MyFlix-tietokannassamme on viisi taulukkoa. Pidä valinnat oletusarvoisina ja napsauta Seuraava.
Vaihe 6) Revkatso SQL-skripti
Alla oleva ikkuna esikatselee SQL-skriptiä, joka luo tietokannan. Tallenna skripti *.sql-tiedostona tai kopioi se leikepöydälle ja napsauta sitten Seuraava.
Vaihe 7) Vahvista edistyminen
Alla oleva ikkuna tulee näkyviin, kun tietokanta on luotu valitulle palvelimelle. MySQL palvelininstanssi. ER-mallin taulukot ovat nyt fyysisesti palvelimella.
Tietokanta ja harjoitustiedot on liitetty. Käytämme tätä tietokantaa seuraavilla oppitunneilla. Tuo se vain sisään MySQL Työpöytä aloittamiseen.
Lataa MyFlixDB napsauttamalla tätä







.png)