Cum se creează o bază de date în MySQL (Crea MySQL Mese)
⚡ Rezumat inteligent
Crearea unei baze de date în MySQL urmează două căi dovedite: executarea unei instrucțiuni CREATE DATABASE sau generarea de scheme fizice dintr-un model ER prin MySQL Inginerie avansată pentru atelier. Ambele abordări produc tabele identice, gata de producție.
Pași pentru a crea o bază de date în MySQL
O bază de date în MySQL este un container denumit pentru tabele, vizualizări și obiecte conexe. Puteți crea unul în două moduri:
1) Prin executarea unei interogări SQL simplă
2) Prin utilizarea ingineriei avansate în MySQL Banc de lucru
As SQL începător, să ne uităm mai întâi la metoda de interogare.
Cum se creează o bază de date în MySQL
Iată cum se creează o bază de date în MySQL:
CREATE DATABASE este comanda SQL folosită pentru crearea unei baze de date în MySQL.
Imaginează-ți că trebuie să creezi o bază de date cu numele „filme”. Poți crea o bază de date în MySQL prin executarea următoarei comenzi SQL.
CREATE DATABASE movies;
Notă: Puteți utiliza și comanda CREATE SCHEMA în loc de CREATE DATABASE.
Instrucțiunea funcționează o singură dată. Rularea ei din nou generează o eroare, așa că haideți să îmbunătățim interogarea cu mai mulți parametri.
DACĂ NU EXISTĂ
Un singur MySQL Un server poate conține mai multe baze de date. Când mai multe persoane partajează acel server, puteți încerca să creați o bază de date cu numele uneia existente.
DACĂ NU EXISTĂ îl instruiește pe MySQL serverul să verifice dacă există o bază de date cu același nume înainte de a o crea. Baza de date este creată numai dacă numele este liber; fără această clauză, MySQL aruncă o eroare.
CREATE DATABASE IF NOT EXISTS movies;
Odată ce numele bazei de date este sigur, următoarea decizie este cum MySQL ar trebui să stocheze și să compare textul din interiorul său.
Colaţionare şi set de caractere
A set de caractere decide ce caractere poate stoca o coloană, în timp ce un gustare este setul de reguli utilizate în comparație și sortare. Ambele pot fi definite la patru niveluri: server, bază de date, tabel și coloană.
Ordonarea pe care o alegeți depinde de setul de caractere. De exemplu, setul de caractere latin1 folosește latin1_swedish_ci colaționare, care este ordinea suedeză fără a ține cont de majuscule/minuscule.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci;
Pentru limbile locale, cum ar fi araba sau chineza, selectați Unicode utf8mb4 set de caractere, care stochează fiecare caracter Unicode, inclusiv emoji-uri. În MySQL 8.0, utf8mb4 este setul implicit de caractere și utf8mb4_0900_ai_ci colaționarea implicită.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
Puteți găsi lista cu toate colațiile și seturile de caractere aici.
Puteți vedea lista bazelor de date existente executând următoarea comandă SQL.
SHOW DATABASES;
Odată ce baza de date este configurată, puteți adăuga tabelele care vor conține înregistrările.
Cum se creează un tabel în MySQL
Comanda CREATE TABLE este utilizată pentru a crea tabele într-o bază de date.
După cum arată diagrama, fiecare tabel aparține unei singure baze de date. Tabelele sunt create cu CREAȚI TABEL instrucțiune, care are următoarea sintaxă.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
AICI
- „CREATE TABLE” este responsabilă pentru crearea tabelului în baza de date.
- „[DACĂ NU EXISTĂ]” este opțional și creează tabelul numai dacă nu se găsește un nume de tabel corespunzător.
- „`fieldName`” este numele câmpului, iar „data Type” definește natura datelor stocate în acesta.
- „[parametri opționali]” reprezintă informații suplimentare despre un câmp, cum ar fi „AUTO_INCREMENT” sau NOT NULL.
- „Storage Engine” gestionează tabelul, în mod normal InnoDB, care acceptă tranzacții și chei externe.
MySQL Creați un exemplu de tabel
Mai jos este a MySQL exemplu de creare a unui tabel într-o bază de date:
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;
Notă: corectă MySQL cuvântul cheie este AUTO_INCREMENT cu o subliniere. AUTOINCREMENT aparține lui SQLite și generează o eroare de sintaxă în MySQL.
Fiecare coloană conține un tip de date, așa că alegeți cu atenție: nu subestimați și nici supraestimați intervalul de date așteptat.
MySQL Tipuri de date
Tipurile de date definesc natura datelor care pot fi stocate într-o anumită coloană a unui tabel.
MySQL are 3 principalele categorii de tipuri de date, și anume:
- Numeric
- Text
- Data / ora
Tipuri de date numerice
Tipurile de date numerice sunt utilizate pentru stocarea valorilor numerice. Este foarte important să vă asigurați că intervalul datelor dvs. se află între limitele inferioară și superioară ale tipului de date numerice pe care îl alegeți.
| TINYINT( ) | -128 până la 127 normal 0 la 255 NESEMNAT. |
| SMALLINT( ) | -32768 până la 32767 normal 0 la 65535 NESEMNAT. |
| MEDIUMINT( ) | -8388608 până la 8388607 normal 0 la 16777215 NESEMNAT. |
| INT( ) | -2147483648 până la 2147483647 normal 0 la 4294967295 NESEMNAT. |
| BIGINT( ) | -9223372036854775808 până la 9223372036854775807 normal 0 la 18446744073709551615 NESEMNAT. |
| PLUTI | Un mic număr aproximativ cu virgulă zecimală flotantă. |
| DUBLĂ( , ) | Un număr mare cu virgulă zecimală flotantă. |
| DECIMAL( , ) | Un DOUBLE stocat ca șir de caractere, permițând o virgulă zecimală fixă. Opțiune pentru stocarea valorilor monetare. |
Tipuri de date text
Așa cum sugerează și numele categoriei de tipuri de date, acestea sunt utilizate pentru stocarea valorilor text. Asigurați-vă întotdeauna că lungimea datelor textuale nu depășește lungimea maximă a coloanei.
| CHAR( ) | O secțiune fixă de la 0 la 255 de caractere. |
| VARCHAR( ) | O secțiune variabilă de la 0 la 255 de caractere. |
| TINYTEXT | Un șir cu o lungime maximă de 255 de caractere. |
| TEXT | Un șir cu o lungime maximă de 65535 de caractere. |
| BLOB | Un șir cu o lungime maximă de 65535 de caractere. |
| TEXT MEDIU | Un șir cu o lungime maximă de 16777215 de caractere. |
| BLOB MEDIU | Un șir cu o lungime maximă de 16777215 de caractere. |
| TEXT LUNG | Un șir cu o lungime maximă de 4294967295 de caractere. |
| LONGBLOB | Un șir cu o lungime maximă de 4294967295 de caractere. |
Tipuri de date pentru dată și oră
Tipurile de date de tip dată și oră stochează valorile calendarului și ale ceasului într-un format fix, ceea ce menține sortarea și compararea fiabile.
| DATA | AAAA-LL-ZZ |
| datetime | AAAA-LL-ZZ HH: MM: SS |
| TIMESTAMP-UL | YYYYMMDDHHMMSS |
| TIMP | HH: MM: SS |
Alte tipuri de date
Pe lângă cele de mai sus, există și alte tipuri de date în MySQL.
| ENUM | Pentru a stoca o valoare text aleasă dintr-o listă de valori text predefinite |
| SET | Acesta este, de asemenea, utilizat pentru stocarea valorilor text alese dintr-o listă de valori text predefinite. Poate avea mai multe valori. |
| BOOL | Sinonim pentru TINYINT(1), folosit pentru a stoca valori booleene |
| BINAR | Similar cu CHAR; diferența este că textele sunt stocate în format binar. |
| VARBINAR | Similar cu VARCHAR; diferența este că textele sunt stocate în format binar. |
Acum să vedem o interogare pentru crearea unui tabel care utilizează toate tipurile de date. Studiați-o și identificați cum este definit fiecare tip de date în tabelul de mai jos. MySQL exemplu.
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;
Cele mai bune practici pentru crearea a MySQL Baza de date
Câteva convenții mențin scripturile lizibile:
- Folosiți majuscule pentru cuvintele cheie SQL, de exemplu „DROP SCHEMA IF EXISTS `MyFlixDB`;”
- Încheiați toate comenzile SQL folosind punct și virgulă.
- Evitați utilizarea spațiilor în numele schemelor, tabelelor și câmpurilor. Folosiți sublinieri pentru a separa numele schemelor, tabelelor sau câmpurilor.
- Preferați InnoDB în locul MyISAM pentru tabele noi, deoarece InnoDB acceptă tranzacții, blocare la nivel de rând și chei externe.
Metoda de interogare este completă. A doua rută ajunge la aceeași bază de date dintr-un model vizual în loc de cod SQL scris de mână.
Cum se creează MySQL Diagrama ER a bancului de lucru Forward Engineering
MySQL Banc de lucru are utilități care suportă inginerie avansată. Inginerie avansată este termenul tehnic care descrie procesul de traducerea automată a unui model logic într-o implementare fizică.
Am creat un Diagrama ER în a noastră Modelare ER lecție. Vom folosi acum acel model ER pentru a genera scripturile SQL care vor crea baza noastră de date.
Crearea bazei de date MyFlix din modelul MyFlix ER
Pasul 1) Deschideți modelul ER al bazei de date MyFlix pe care l-ai creat mai devreme.
Pasul 2) Selectați inginerul de avans
Faceți clic pe meniul Bază de date și selectați Inginer înainte.
Pasul 3) Opțiuni de conectare
Următoarea fereastră vă permite să vă conectați la o instanță de MySQL server. Faceți clic pe lista derulantă cu conexiunile stocate și selectați gazda locală. Faceți clic pe Executare.
Pasul 4) Selectați opțiunile afișate mai jos
Selectați opțiunile afișate mai jos în expertul care apare. Faceți clic pe Următorul.
Pasul 5) Păstrați selecțiile implicite și faceți clic pe Următorul
Următorul ecran prezintă rezumatul obiectelor din diagrama noastră EER. Baza noastră de date MyFlix are 5 tabele. Păstrați selecțiile implicite și faceți clic pe Următorul.
Pas 6) Revvezi scriptul SQL
Fereastra de mai jos previzualizează scriptul SQL care creează baza noastră de date. Salvați scriptul într-un fișier *.sql sau copiați-l în clipboard, apoi faceți clic pe Următorul.
Pasul 7) Înregistrarea progresului
Fereastra de mai jos apare după ce baza de date este creată pe locația selectată MySQL instanță de server. Tabelele din modelul ER există acum fizic pe server.
Baza de date împreună cu datele fictive este atașată. Vom folosi această bază de date în lecțiile următoare. Pur și simplu importați-o în MySQL Banc de lucru pentru început.
Faceți clic aici pentru a descărca MyFlixDB








.png)