Kuidas luua andmebaasi MySQL (Loo MySQL tabelid)
Andmebaasi loomise sammud MySQL
Looge andmebaas kahel viisil
1) täites lihtsa SQL-päringu
2) Kasutades edasist inseneritööd MySQL Workbench
As SQL algaja, vaatame kõigepealt päringumeetodit.
Kuidas luua andmebaasi MySQL
Siit saate teada, kuidas luua andmebaasi MySQL:
CREATE DATABASE on SQL-i käsk, mida kasutatakse andmebaasi loomiseks MySQL.
Kujutage ette, et peate looma andmebaasi nimega "filmid". Saate luua andmebaasi MySQL 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 täiustame oma SQL-päringut, lisades rohkem parameetreid ja spetsifikatsioone.
KUI EI OLEMAS
Üksik MySQL serveril võib olla mitu andmebaasi. Kui te pole ainuke, kes samale juurdepääsule pääseb MySQL server või kui peate tegelema mitme andmebaasiga, on tõenäoline, et proovite luua uut andmebaasi olemasoleva andmebaasi nimega. KUI EI OLEMAS lase sul juhendada MySQL server, et kontrollida enne andmebaasi loomist sarnase nimega andmebaasi olemasolu.
Kui KUI EI OLEMAS kasutatakse andmebaasi luuakse ainult siis, kui antud nimi ei ole vastuolus olemasoleva andmebaasi nimega. Ilma kasutamata KUI EI OLEMAS MySQL viskab vea.
CREATE DATABASE IF NOT EXISTS movies;
Võrdlus ja märgikomplekt
Võrdlemine on komplekteeritud võrdluseks kasutatavad reeglid.Paljud inimesed kasutavad MySQL salvestada muid andmeid peale inglise keele. Andmed salvestatakse MySQL kasutades konkreetset märgikomplekti. Märki saab määratleda erinevatel tasemetel, nimelt serveril, andmebaasil, tabelil ja veerudel.
Peate valima võrdlemise reeglid, mis omakorda sõltuvad valitud märgistikust.
Näiteks Latin1 märgistik kasutab latin1_swedish_ci
võrdlemine, mis on rootsi tõstutundlik järjekord.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Parim tava kohalike keelte (nt araabia, hiina jne) kasutamisel on valida Unicode'i (utf-8) märgistik, millel on mitu võrdlust, või jääda lihtsalt vaikevõrdlusele utf8-general-ci.
Leiate kõigi võrdluste ja märgikomplektide loendi siin
Olemasolevate andmebaaside loendi kuvamiseks käivitage järgmine SQL-käsk.
SHOW DATABASES
Kuidas luua tabelit MySQL
CREATE TABLE käsku kasutatakse tabelite loomiseks andmebaasis
Tabeleid saab luua kasutades LOE TABEL lause 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 tabeli loomise eest andmebaasis.
- "[IF NOT EXISTS]" on valikuline ja looge tabel ainult siis, kui sobivat tabeli nime ei leita.
- "fieldName" on välja nimi ja "andmetüüp" määrab väljale salvestatavate andmete olemuse.
- „[valikulised parameetrid]” lisateave välja kohta, nt AUTO_INCREMENT , NOT NULL jne.
MySQL Loo tabeli 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;
Nüüd vaatame, mis MySQLi andmetüübid on. Sõltuvalt teie vajadusest saate kasutada mõnda neist. Andmebaasi loomisel peaksite alati püüdma mitte ala- ega ülehinnata potentsiaalset andmevahemikku.
ANDMETÜÜBID
Andmetüübid määravad tabeli konkreetsesse veergu salvestatavate andmete olemuse
MySQL on 3 andmetüüpide peamised kategooriad
- numbriline,
- Tekst
- Kuupäev Kellaaeg.
Numbrilised andmetüübid
Numbrilisi andmetüüpe kasutatakse arvväärtuste salvestamiseks. On väga oluline tagada, et teie andmete vahemik jääks numbriliste andmetüüpide alumise ja ülemise piiri vahele.
TINYINT ( ) | -128 kuni 127 normaalne 0 kuni 255 ALLKIRJATA. |
VÄIKE( ) | -32768 kuni 32767 normaalne 0 kuni 65535 ALLKIRJATA. |
KESKMINE ( ) | -8388608 kuni 8388607 normaalne 0 kuni 16777215 ALLKIRJATA. |
INT( ) | -2147483648 kuni 2147483647 normaalne 0 kuni 4294967295 ALLKIRJATA. |
BIGINT( ) | -9223372036854775808 kuni 9223372036854775807 normaalne 0 kuni 18446744073709551615 ALLKIRJATA. |
UJU | Väike ligikaudne arv ujuva komaga. |
DOUBLE( , ) | Ujuva kümnendkohaga suur arv. |
KOMMEND ( , ) | DOUBLE, mis on salvestatud stringina , mis võimaldab fikseeritud koma. Valuuta väärtuste salvestamise valik. |
Teksti andmetüübid
Nagu andmetüübi kategooria nimi viitab, kasutatakse neid tekstiväärtuste salvestamiseks. Veenduge alati, et teie tekstiandmete pikkus ei ületaks maksimaalset pikkust.
CHAR( ) | Fikseeritud jaotis pikkusega 0 kuni 255 tähemärki. |
VARCHAR( ) | Muutuv jaotis pikkusega 0 kuni 255 tähemärki. |
PISIKETEKST | String, mille maksimaalne pikkus on 255 tähemärki. |
TEKST | String, mille maksimaalne pikkus on 65535 tähemärki. |
MÄNG | String, mille maksimaalne pikkus on 65535 tähemärki. |
KESKMINE TEKST | String, mille maksimaalne pikkus on 16777215 tähemärki. |
KESKMINE BLOB | String, mille maksimaalne pikkus on 16777215 tähemärki. |
PIKTEKST | String, mille maksimaalne pikkus on 4294967295 tähemärki. |
LONGBLOB | String, mille maksimaalne pikkus on 4294967295 tähemärki. |
Kuupäev Kellaaeg
ANDMED | AAAA-KK-DD |
KUUPÄEV KELLAAEG | AAAA-KK-PP HH: KK: SS |
AJAMÄNG | YYYYMMDDHHMMSS |
AEG | HH: MM: SS |
Lisaks ülaltoodule on sees veel mõned andmetüübid MySQL.
ENUM | Eelmääratletud tekstiväärtuste loendist valitud tekstiväärtuse salvestamiseks |
SET | Seda kasutatakse ka eelmääratletud tekstiväärtuste loendist valitud tekstiväärtuste salvestamiseks. Sellel võib olla mitu väärtust. |
BOOL | TINYINT(1) sünonüüm, mida kasutatakse Boole'i väärtuste salvestamiseks |
Binaarne | Sarnaselt CHAR-iga on erinevus selles, et tekstid salvestatakse binaarvormingus. |
VARBINAAR | Sarnaselt VARCHARiga salvestatakse tekste binaarvormingus. |
Nüüd vaatame päringut kõigi andmetüüpide andmeid sisaldava tabeli loomiseks. Uurige seda ja tehke kindlaks, kuidas iga andmetüüp on määratletud allolevas loomistabelis MySQL näide.
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
- Kasutage SQL-i märksõnade puhul suuri tähti, st "DOP SCHEMA IF EXISTS `MyFlixDB";"
- Lõpetage kõik SQL-käsud semikoolonite abil.
- Vältige tühikute kasutamist skeemide, tabelite ja väljade nimedes. Kasutage skeemi, tabeli või välja nimede eraldamiseks selle asemel allkriipse.
Kuidas luua MySQL töölaud ER diagramm edasi insener
MySQL töölaud on utiliidid, mis toetavad edasist inseneritööd. Edasine inseneritöö on tehniline termin, mis kirjeldab protsessi loogilise mudeli automaatne tõlkimine füüsiliseks seadmeks.
Oleme loonud an ER diagramm meie ER modelleerimise õpetus. Nüüd kasutame seda ER-mudelit meie andmebaasi loovate SQL-skriptide genereerimiseks.
MyFlix andmebaasi loomine MyFlix ER mudelist
Step 1) Avage MyFlixi andmebaasi ER-mudel
Avage varasemas õpetuses loodud MyFlixi andmebaasi ER-mudel.
Step 2) Valige edasimüüja
Klõpsake andmebaasi menüül. Valige edasimüüja
Step 3) Ühendusvõimalused
Järgmine aken võimaldab teil luua ühenduse eksemplariga MySQL server. Klõpsake salvestatud ühenduse ripploendil ja valige kohalik host. Klõpsake käsul Käivita
Step 4) Valige allpool näidatud valikud
Valige kuvatavas viisardis allolevad suvandid. Klõpsake nuppu Edasi
Step 5) Jätke valikud vaikeväärtusteks ja klõpsake nuppu Edasi
Järgmisel ekraanil kuvatakse meie EER diagrammi objektide kokkuvõte. Meie MyFlix DB-l on 5 lauda. Jätke valikud vaikeväärtusteks ja klõpsake nuppu Edasi.
Step 6) Revvaata SQL-skripti
Ilmub allpool näidatud aken. See aken võimaldab teil eelvaadet vaadata SQL-skript meie andmebaasi loomiseks. Saame skriptid salvestada *.sql” faili või kopeerida skriptid lõikepuhvrisse. Klõpsake nuppu järgmine
Step 7) Tehke edusamme
Allpool näidatud aken ilmub pärast andmebaasi edukat loomist valitud kohta MySQL serveri eksemplar.
- Andmebaasi loomine hõlmab andmebaasi loogilise disaini mudeli tõlkimist füüsilisse andmebaasi.
- MySQL toetab arvuliste, kuupäevade ja stringide väärtuste jaoks mitmeid andmetüüpe.
- CREATE DATABASE käsku kasutatakse andmebaasi loomiseks
- CREATE TABLE käsku kasutatakse tabelite loomiseks andmebaasis
- MySQL töölaud toetab edasist inseneritööd, mis hõlmab SQL-i skriptide automaatset genereerimist loogilisest andmebaasimudelist, mida saab käivitada füüsilise andmebaasi loomiseks
Andmebaas koos näivate andmetega on lisatud. Kasutame seda DB-d kõigi oma edasiste õpetuste jaoks. Lihtne importida DB sisse MySQL Töölaud alustamiseks
MyFlixDB allalaadimiseks klõpsake siin