Andmebaasi loomise sammud MySQL-is
Andmebaasi loomine kahel viisil
1) Lihtsa SQL-päringu käivitamine
2) MySQL Workbenchis edasiviiva inseneri abil
Selles SQL-õpetuses saate teada
- Kuidas andmebaasi luua
- Kuidas luua MySQL-is tabelit
- Andmetüübid
- MySQL tööpingi ER-diagramm edasi
SQL-i algajana uurime kõigepealt päringumeetodit.
Kuidas andmebaasi luua
MySQL-is andmebaasi loomiseks toimige järgmiselt.
CREATE DATABASE on SQL-käsk, mida kasutatakse MySQL-is andmebaasi loomiseks.
Kujutage ette, et peate looma andmebaasi nimega "filmid". MySQL-is saate andmebaasi luua, käivitades järgmise SQL-käsu.
CREATE DATABASE movies;
Märkus. CREATE DATABASE asemel võite kasutada ka käsku CREATE SCHEMA
Nüüd parandame oma SQL-päringut, lisades rohkem parameetreid ja spetsifikatsioone.
KUI EI OLE
Ühel MySQL-serveril võib olla mitu andmebaasi. Kui te pole ainus, kes pääseb samale MySQL-i serverile või kui peate tegelema mitme andmebaasiga, on tõenäoline, et proovite luua uue andmebaasi olemasoleva andmebaasi nimega. KUI EI OLE, laseb teil enne andmebaasi loomist juhendada MySQL-i serverit kontrollima sarnase nimega andmebaasi olemasolu.
Kui kasutatakse KUI EI OLE, luuakse andmebaas ainult siis, kui eesnimi ei ole vastuolus olemasoleva andmebaasi nimega. Kui EI OLE OLEMA, kasutab MySQL vea.
CREATE DATABASE IF NOT EXISTS movies;
Sortimine ja märgistik
Collation on kogum eeskirju kasutatakse võrdlust. Paljud inimesed kasutavad MySQL-i muude andmete kui inglise keele salvestamiseks. Andmed salvestatakse MySQL-is kindla märgistiku abil. Märgistikku saab määratleda erinevatel tasanditel, nimelt server, andmebaas, tabel ja veerud.
Peate valima võrdlusreeglid, mis sõltuvad omakorda valitud märgistikust.
Näiteks kasutab Latin1 märgistik tähist
latin1_swedish_ci
võrdlus, mis on Rootsi juhtumitundetu järjekord.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Kohalike keelte, näiteks araabia, hiina jms kasutamisel on parim tava valida Unicode (utf-8) märgistik, millel on mitu võrdlust, või jääda lihtsalt vaikesortimise utf8-general-ci juurde.
Kõigi võrdluste ja märgistike loendi leiate siit
Olemasolevate andmebaaside loendit näete, käivitades SQL-i käsu.
SHOW DATABASES
Kuidas luua MySQL-is tabelit
CREATE TABLE käsku kasutatakse andmebaaside tabelite loomiseks
Tabeleid saab luua käsu CREATE TABLE abil ja sellel on tegelikult järgmine süntaks.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
SIIN
- "CREATE TABLE" vastutab andmebaasi tabeli loomise eest.
- "[KUI EI OLE]" on valikuline ja looge tabel ainult siis, kui vastavat tabeli nime ei leitud.
- "" fieldName "on välja nimi ja" data type "määratleb väljale salvestatavate andmete laadi.
- "[valikulised parameetrid]" lisateave sellise välja kohta nagu "AUTO_INCREMENT", NOT NULL jne.
MySQLi tabeli loomise näide
Allpool on MySQL näide tabeli loomiseks andmebaasis:
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;
Vaatame nüüd, millised on MySQL-i andmetüübid. Võite kasutada ükskõik millist neist vastavalt vajadusele. Andmebaasi loomisel peaksite alati proovima mitte alahinnata ega ülehinnata potentsiaalset andmevahemikku.
ANDMETÜÜBID
Andmetüübid määratlevad andmete olemuse, mida saab salvestada tabeli konkreetsesse veergu
MySQL-l on 3 peamist tüüpi andmetüüpe
- Numbriline,
- Tekst
- Kuupäev Kellaaeg.
Numbrilised andmetüübid
Numbriliste andmete tüüpe kasutatakse arvväärtuste salvestamiseks. On väga oluline veenduda, et teie andmete vahemik oleks numbriliste andmetüüpide alumise ja ülemise piiri vahel.
TINYINT () | -128 kuni 127 tavaline 0 kuni 255 MÄRKIMATA. |
SMALLINT () | -32768 kuni 32767 normaalne 0 kuni 65535 MÄRKimata. |
KESKMINE () | -8388608 kuni 8388607 normaalne 0 kuni 16777215 MITTEKIRJUTATUD. |
INT () | -2147483648 kuni 2147483647 normaalne 0 kuni 4294967295 MÄRKIMATA. |
BIGINT () | -9223372036854775808 kuni 9223372036854775807 kuni normaalne 0 kuni 18446744073709551615 MÄRKIMATA. |
UJU | Väike ligikaudne arv ujuva kümnendkohaga. |
DOUBLE (,) | Suur arv ujuva kümnendkohaga. |
DECIMAL (,) | KAHELIK, mis on salvestatud stringina, võimaldades fikseeritud koma. Valuuta väärtuste salvestamise valik. |
Teksti andmetüübid
Kuna andmetüübi kategooria nimi tähendab, kasutatakse neid tekstiväärtuste salvestamiseks. Veenduge alati, et teie tekstiandmete pikkus ei ületaks maksimaalset pikkust.
CHAR () | Fikseeritud osa pikkusega 0–255 tähemärki. |
VARCHAR () | Muutuv osa vahemikus 0 kuni 255 tähemärki. |
TINYTEXT | String maksimaalse pikkusega 255 tähemärki. |
TEKST | String maksimaalse pikkusega 65535 tähemärki. |
MÄNG | String maksimaalse pikkusega 65535 tähemärki. |
KESKMINE | String maksimaalse pikkusega 16777215 tähemärki. |
KESKMÕÕN | String maksimaalse pikkusega 16777215 tähemärki. |
PIKATEKST | String maksimaalse pikkusega 4294967295 tähemärki. |
LONGBLOB | String maksimaalse pikkusega 4294967295 tähemärki. |
Kuupäev Kellaaeg
KUUPÄEV | AAAA-KK-PP |
KUUPÄEV KELLAAEG | AAAA-KK-PP HH: KK: SS |
AJAMÄNG | YYYYMMDDHHMMSS |
AEG | HH: MM: SS |
Lisaks ülaltoodule on MySQL-is veel mõned andmetüübid.
ENUM | Eelmääratud tekstiväärtuste loendist valitud tekstiväärtuse salvestamiseks |
SET | Seda kasutatakse ka eelnevalt määratletud tekstiväärtuste loendist valitud tekstiväärtuste salvestamiseks. Sellel võib olla mitu väärtust. |
BOOL | Boolean väärtuste salvestamiseks kasutatava TINYINT (1) sünonüüm |
Binaarne | Sarnaselt CHAR-ile on erinevus ka tekstid salvestatud binaarses vormingus. |
VARBAARNE | Sarnaselt VARCHARile on erinevus ka tekstides binaarformaadis. |
Nüüd vaatame päringut tabeli loomiseks, millel on kõigi andmetüüpide andmed. Uurige seda ja tehke kindlaks, kuidas alltoodud tabeli MySQL näide määratleb iga andmetüübi.
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 ;
Parimad tavad
- SQL-i märksõnade jaoks kasutage suurtähti, st "DROP SCHEMA IF EXISIT" MyFlixDB ";"
- Lõpeta kõik oma SQL-i käsud semikoolonite abil.
- Vältige tühikute kasutamist skeemi, tabeli ja välja nimedes. Skeemi, tabeli või välja nimede eraldamiseks kasutage selle asemel alakriipsusid.
MySQL tööpingi ER-diagramm edasiarendus
MySQL-i töölaual on utiliite, mis toetavad edasiarendust. Edasine insener on tehniline termin, mis kirjeldab loogilise mudeli füüsiliseks töövahendiks tõlkimise protsessi .
Lõime oma ER-i modelleerimise õpetuse jaoks ER-skeemi. Selle andmebaasi loomiseks kasutame nüüd seda ER-i mudelit SQL-i skriptide loomiseks.
MyFlixi andmebaasi loomine MyFlix ER mudelist
1. Avage varasemas õpetuses loodud MyFlixi andmebaasi ER-mudel.
2. Klõpsake menüüd andmebaas. Valige edasiviiv insener
3. Järgmine aken võimaldab teil luua ühenduse MySQL-i serveri eksemplariga. Klõpsake salvestatud ühenduse rippmenüül ja valige kohalik host. Klõpsake nuppu Execute
4. Valige kuvatavas viisardis allpool näidatud suvandid. Klõpsake nuppu Järgmine
5. Järgmisel ekraanil kuvatakse objektide kokkuvõte meie EER-diagrammil. Meie MyFlix DB-l on 5 tabelit. Hoidke valikud vaikimisi ja klõpsake nuppu Edasi.
6 ... Ilmub allpool näidatud aken. See aken võimaldab teil andmebaasi loomiseks SQL-i skripti eelvaadet vaadata. Saame skriptid salvestada * .sql "faili või kopeerida skriptid lõikelauale. Klõpsake järgmisel nupul
7. Allpool näidatud aken kuvatakse pärast andmebaasi edukat loomist valitud MySQL-i serveri eksemplaris.
Kokkuvõte
- Andmebaasi loomine hõlmab loogilise andmebaasi kujundusmudeli tõlkimist füüsilisse andmebaasi.
- MySQL toetab arvude, kuupäevade ja stringide väärtuste jaoks mitut tüüpi andmet.
- CREATE DATABASE käsku kasutatakse andmebaasi loomiseks
- CREATE TABLE käsku kasutatakse andmebaaside tabelite loomiseks
- MySQL-i tööpink toetab edasiarendust, mis hõlmab automaatselt SQL-skriptide loomist loogilisest andmebaasimudelist, mida saab käivitada füüsilise andmebaasi loomiseks
Andmebaas koos mannekeenidega on lisatud. Kasutame seda andmebaasi kõigi oma edasiste õpetuste jaoks. Alustamiseks lihtsalt importige DB MySQL Workbenchi
Klõpsake siin, et MyFlixDB alla laadida