Datu bāzes izveide MySQL
Izveidot datu bāzi divos veidos
1) Izpildot vienkāršu SQL vaicājumu
2) Izmantojot MySQL Workbench progresīvo inženieriju
Šajā SQL apmācībā jūs uzzināsiet
- Kā izveidot datu bāzi
- Kā izveidot tabulu MySQL
- Datu tipi
- MySQL darbagalda ER diagramma
Kā SQL iesācējs vispirms izpētīsim vaicājuma metodi.
Kā izveidot datu bāzi
Lūk, kā izveidot datu bāzi MySQL:
CREATE DATABASE ir SQL komanda, ko izmanto, lai izveidotu datu bāzi MySQL.
Iedomājieties, ka jums ir jāizveido datu bāze ar nosaukumu "filmas". MySQL var izveidot datu bāzi, izpildot SQL komandu.
CREATE DATABASE movies;
Piezīme: CREATE DATABASE vietā varat izmantot arī komandu CREATE SCHEMA
Tagad uzlabosim mūsu SQL vaicājumu, pievienojot vairāk parametru un specifikāciju.
JA NEBŪTU
Vienam MySQL serverim varētu būt vairākas datu bāzes. Ja jūs neesat vienīgais, kas piekļūst vienam un tam pašam MySQL serverim vai ja jums ir jārisina vairākas datu bāzes, ir iespējamība mēģināt izveidot jaunu datu bāzi ar esošas datu bāzes nosaukumu. Ja nav, ļaujiet MySQL serverim uzdot pirms datu bāzes izveidošanas pārbaudīt datu bāzes ar līdzīgu nosaukumu esamību.
Ja tiek izmantots IF NOT EXISTS, datu bāze tiek izveidota tikai tad, ja dotais vārds nav pretrunā ar esošās datubāzes nosaukumu. Neizmantojot IF NEKĀDU, MySQL rada kļūdu.
CREATE DATABASE IF NOT EXISTS movies;
Salīdzināšana un rakstzīmju kopa
Salīdzināšana ir noteikts par noteikumu, ko izmanto salīdzinājumā. Daudzi cilvēki izmanto MySQL, lai glabātu datus, kas nav angļu valoda. Dati tiek glabāti MySQL, izmantojot noteiktu rakstzīmju kopu. Rakstzīmju kopu var definēt dažādos līmeņos, ti, serverī, datu bāzē, tabulā un kolonnās.
Jums jāizvēlas salīdzināšanas kārtulas, kas savukārt ir atkarīgas no izvēlētās rakstzīmju kopas.
Piemēram, Latin1 rakstzīmju kopa izmanto
latin1_swedish_ci
salīdzināšana, kas ir Zviedrijas gadījuma nejutīga kārtība.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Labākā prakse, lietojot vietējās valodas, piemēram, arābu, ķīniešu uc, ir izvēlēties Unicode (utf-8) rakstzīmju kopu, kurai ir vairākas salīdzināšanas, vai vienkārši pielīmēt noklusējuma kārtojumu utf8-general-ci.
Visu salīdzinājumu un rakstzīmju kopu sarakstu varat atrast šeit
Varat skatīt esošo datu bāzu sarakstu, izpildot komandu SQL.
SHOW DATABASES
Kā izveidot tabulu MySQL
CREATE TABLE komandu izmanto tabulu izveidošanai datu bāzē
Tabulas var izveidot, izmantojot CREATE TABLE priekšrakstu, un tam faktiski ir šāda sintakse.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
ŠEIT
- "CREATE TABLE" ir atbildīgais par tabulas izveidi datu bāzē.
- "[IF NOT IS]] nav obligāts un izveido tabulu tikai tad, ja nav atrasts atbilstošs tabulas nosaukums.
- "" fieldName "" ir lauka nosaukums, un "data Type" nosaka laukā saglabājamo datu veidu.
- "[izvēles parametri]" papildu informācija par lauku, piemēram, "AUTO_INCREMENT", NOT NULL utt.
MySQL tabulas izveides piemērs
Zemāk ir MySQL piemērs tabulas izveidei datu bāzē:
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;
Tagad redzēsim, kādi ir MySQL datu tipi. Jūs varat izmantot jebkuru no tiem atkarībā no vajadzības. Veidojot datu bāzi, vienmēr jācenšas nenovērtēt vai pārvērtēt potenciālo datu diapazonu.
DATU VEIDI
Datu tipi nosaka to datu veidu, kurus var saglabāt konkrētā tabulas kolonnā
MySQL ir 3 galvenās datu tipu kategorijas, proti
- Skaitliskais,
- Teksts
- Datums Laiks.
Skaitliskie datu tipi
Skaitlisko vērtību glabāšanai tiek izmantoti ciparu datu tipi. Ir ļoti svarīgi pārliecināties, ka jūsu datu diapazons ir starp skaitlisko datu tipu apakšējo un augšējo robežu.
TINYINT () | -128 līdz 127 normāli 0 līdz 255 Neparakstīts. |
SMALLINT () | -32768 līdz 32767 normāli no 0 līdz 65535 Neparakstīts. |
MEDIUMINT () | -8388608 līdz 8388607 normāls 0 līdz 16777215 NEPARAKSTĪTS. |
INT () | -2147483648 līdz 2147483647 normāls 0 līdz 4294967295 NERAKSTĪTS. |
BIGINT () | -9223372036854775808 līdz 9223372036854775807 līdz normālai vērtībai no 0 līdz 18446744073709551615 nav parakstīts. |
Pludiņš | Neliels aptuvens skaitlis ar peldošu decimāldaļu. |
DOUBLE (,) | Liels skaitlis ar peldošu komatu. |
DECIMAL (,) | DUBULA, kas glabāta kā virkne, ļaujot noteikt fiksēto decimāldaļu. Izvēle valūtas vērtību glabāšanai. |
Teksta datu veidi
Tā kā datu veida kategorijas nosaukums nozīmē, tos izmanto teksta vērtību glabāšanai. Vienmēr pārliecinieties, ka tekstuālo datu garums nepārsniedz maksimālo garumu.
CHAR () | Fiksēta sadaļa no 0 līdz 255 rakstzīmēm. |
VARCHAR () | Mainīga sadaļa no 0 līdz 255 rakstzīmēm. |
TINYTEXT | Virkne, kuras maksimālais garums ir 255 rakstzīmes. |
TEKSTS | Virkne ar maksimālo garumu 65535 rakstzīmes. |
LABUMS | Virkne ar maksimālo garumu 65535 rakstzīmes. |
VIDUSS | Virkne, kuras maksimālais garums ir 16777215 rakstzīmes. |
VIDĒJĀ BLOB | Virkne, kuras maksimālais garums ir 16777215 rakstzīmes. |
GARUMA TEKSTS | Virkne, kuras maksimālais garums ir 4294967295 rakstzīmes. |
LONGBLOB | Virkne, kuras maksimālais garums ir 4294967295 rakstzīmes. |
Datums Laiks
DATUMS | GGGG-MM-DD |
DATUMS LAIKS | GGGG-MM-DD HH: MM: SS |
TIMESTAMP | GGGGMMDDHHMMSS |
LAIKS | HH: MM: SS |
Bez augšas MySQL ir daži citi datu tipi.
ENUM | Lai saglabātu teksta vērtību, kas izvēlēta no iepriekš definētu teksta vērtību saraksta |
SET | To izmanto arī, lai saglabātu teksta vērtības, kas izvēlētas no iepriekš definētu teksta vērtību saraksta. Tam var būt vairākas vērtības. |
BOOL | Sinonīms TINYINT (1), ko izmanto Būla vērtību glabāšanai |
BINĀRS | Līdzīgi kā CHAR, atšķirība ir tā, ka teksti tiek glabāti binārā formātā. |
VARBINĀRS | Līdzīgi kā VARCHAR, atšķirība ir tā, ka teksti tiek glabāti binārā formātā. |
Tagad redzēsim vaicājumu tabulas izveidei, kurā ir visu veidu dati. Izpētiet to un norādiet, kā katrs datu tips ir definēts zemāk izveidotajā tabulas MySQL piemērā.
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 ;
Labākā pieredze
- SQL atslēgvārdiem izmantojiet lielos burtus, ti, "PILNOT SHĒMU, JA PASTĀV" MyFlixDB ";"
- Beidziet visas savas SQL komandas, izmantojot semikolu.
- Izvairieties no atstarpju izmantošanas shēmas, tabulas un lauka nosaukumos. Tā vietā izmantojiet pasvītrojumus, lai atdalītu shēmas, tabulas vai lauka nosaukumus.
MySQL darbagalda ER diagramma
MySQL darbagaldā ir utilītas, kas atbalsta progresīvu inženieriju. Progresīvā inženierija ir tehnisks termins, kas raksturo loģiskā modeļa automātiskas pārveidošanas procesu fiziskā agregātā .
Mēs izveidojām ER diagrammu mūsu ER modelēšanas apmācībā. Tagad mēs izmantosim šo ER modeli, lai ģenerētu SQL skriptus, kas izveidos mūsu datu bāzi.
MyFlix datu bāzes izveide no MyFlix ER modeļa
1. Atveriet MyFlix datubāzes ER modeli, kuru izveidojāt iepriekšējā apmācībā.
2. Noklikšķiniet uz datu bāzes izvēlnes. Atlasiet inženieri uz priekšu
3. Nākamais logs ļauj izveidot savienojumu ar MySQL servera gadījumu. Noklikšķiniet uz saglabātā savienojuma nolaižamā saraksta un atlasiet vietējo resursdatoru. Noklikšķiniet uz Izpildīt
4. Parādītajā vednī atlasiet tālāk norādītās opcijas. Noklikšķiniet uz nākamā
5. Nākamajā ekrānā parādīts objektu kopsavilkums mūsu EER diagrammā. Mūsu MyFlix DB ir 5 tabulas. Saglabājiet izvēles noklusējumu un noklikšķiniet uz Tālāk.
6 ... Parādās zemāk parādītais logs. Šis logs ļauj priekšskatīt SQL skriptu, lai izveidotu mūsu datu bāzi. Mēs varam saglabāt skriptus * .sql "failā vai kopēt skriptus uz starpliktuvi. Noklikšķiniet uz nākamās pogas
7. Pēc veiksmīgas datu bāzes izveidošanas atlasītajā MySQL servera instancē parādās zemāk redzamais logs.
Kopsavilkums
- Datu bāzes izveide ietver loģiskas datubāzes noformēšanas modeļa pārveidošanu fiziskajā datu bāzē.
- MySQL atbalsta virkni datu veidu skaitliskām, datumu un virkņu vērtībām.
- Datu bāzes izveidošanai tiek izmantota komanda CREATE DATABASE
- CREATE TABLE komandu izmanto tabulu izveidošanai datu bāzē
- MySQL darbagalds atbalsta progresīvu inženieriju, kas ietver SQL skriptu automātisku ģenerēšanu no loģiskās datu bāzes modeļa, ko var izpildīt, lai izveidotu fizisko datu bāzi
Datu bāze kopā ar fiktīvajiem datiem ir pievienota. Mēs izmantosim šo DB visām mūsu turpmākajām apmācībām. Lai sāktu, vienkārši importējiet DB MySQL Workbench
Noklikšķiniet šeit, lai lejupielādētu MyFlixDB