Hoe u een database kunt maken in MySQL (Creƫren MySQL Tabellen)
ā” Slimme samenvatting
Een database aanmaken in MySQL volgt twee beproefde methoden: het uitvoeren van een CREATE DATABASE-instructie of het genereren van fysieke schema's vanuit een ER-model. MySQL Werkbank-forward engineering. Beide benaderingen leveren identieke, productiegereedde tafels op.

Stappen om een āādatabase aan te maken MySQL
Een database in MySQL Een container met een naam is een container voor tabellen, weergaven en gerelateerde objecten. Je kunt er op twee manieren een maken:
1) Door een eenvoudige SQL-query uit te voeren
2) Door gebruik te maken van voorwaartse engineering MySQL Werkbank
As SQL-beginnerLaten we eerst eens kijken naar de querymethode.
Hoe u een database kunt maken in MySQL
Hier ziet u hoe u een database kunt maken MySQL:
CREATE DATABASE is de SQL-opdracht die wordt gebruikt voor het maken van een database MySQL.
Stel je voor dat je een database met de naam 'films' moet aanmaken. Je kunt een database aanmaken in MySQL door het volgende SQL-commando uit te voeren.
CREATE DATABASE movies;
Opmerking: U kunt in plaats van CREATE DATABASE ook de opdracht CREATE SCHEMA gebruiken.
De instructie werkt slechts ƩƩn keer. Als je hem opnieuw uitvoert, krijg je een foutmelding. Laten we de query daarom verbeteren met meer parameters.
ALS NIET BESTAAT
Een MySQL Een server kan meerdere databases bevatten. Wanneer meerdere mensen die server delen, kan het voorkomen dat je een database probeert aan te maken met dezelfde naam als een bestaande database.
ALS NIET BESTAAT instrueert de MySQL De server controleert of er al een database met dezelfde naam bestaat voordat deze wordt aangemaakt. De database wordt alleen aangemaakt als de naam vrij is; zonder deze voorwaarde zou de database niet aangemaakt worden. MySQL geeft een fout.
CREATE DATABASE IF NOT EXISTS movies;
Zodra de databasenaam veilig is, is de volgende beslissing hoe... MySQL De tekst erin moet worden opgeslagen en vergeleken.
Sortering en karakterset
A karakterset bepaalt welke tekens een kolom kan opslaan, terwijl een vergelijking is de set van regels gebruikt bij vergelijking en sorteren. Beide kunnen op vier niveaus worden gedefinieerd: server, database, tabel en kolom.
De sortering die u kiest, is afhankelijk van de tekenset. De latin1-tekenset gebruikt bijvoorbeeld de latin1_swedish_ci collatie, wat de Zweedse hoofdletterongevoelige volgorde is.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci;
Voor lokale talen zoals Arabisch of Chinees, selecteer Unicode. utf8mb4 tekenset, waarin elk Unicode-teken is opgeslagen, inclusief emoji. MySQL 8.0, utf8mb4 is de standaard tekenset en utf8mb4_0900_ai_ci De standaard sortering.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
U kunt de lijst met alle sorteringen en tekensets vinden hier.
Je kunt de lijst met bestaande databases bekijken door de volgende SQL-opdracht uit te voeren.
SHOW DATABASES;
Nu de database is aangemaakt, kunt u de tabellen toevoegen die de gegevens daadwerkelijk zullen bevatten.
Hoe u een tabel maakt in MySQL
Het CREATE TABLE-commando wordt gebruikt om tabellen in een database aan te maken.
Zoals het diagram laat zien, behoort elke tabel tot ƩƩn database. Tabellen worden gemaakt met de MAAK EEN TABEL een verklaring met de volgende syntaxis.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
HIER
- "CREATE TABLE" is verantwoordelijk voor het aanmaken van de tabel in de database.
- ā[IF NOT EXISTS]ā is optioneel en maakt de tabel alleen aan als er geen overeenkomende tabelnaam wordt gevonden.
- ā`fieldName`ā is de naam van het veld en ādata Typeā definieert de aard van de gegevens die erin zijn opgeslagen.
- ā[optionele parameters]ā is extra informatie over een veld, zoals āAUTO_INCREMENTā of NOT NULL.
- De "storage engine" beheert de tabel, meestal InnoDB, die transacties en foreign keys ondersteunt.
MySQL Tabelvoorbeeld maken
Hieronder is een MySQL Voorbeeld van het aanmaken van een tabel in een database:
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;
Let op: de juiste MySQL trefwoord is AUTO_INCREMENT met een underscore. AUTOINCREMENT hoort bij SQLite en veroorzaakt een syntaxfout in MySQL.
Elke kolom heeft een gegevenstype, dus kies zorgvuldig: onderschat noch overschat het verwachte gegevensbereik.
MySQL Gegevenstypen
Gegevenstypen definiƫren de aard van de gegevens die in een bepaalde kolom van een tabel kunnen worden opgeslagen.
MySQL heeft 3 belangrijkste categorieƫn gegevenstypen, namelijk:
- Numerieke
- Tekst
- Datum Tijd
Numerieke gegevenstypen
Numerieke gegevenstypen worden gebruikt om numerieke waarden op te slaan. Het is erg belangrijk om ervoor te zorgen dat het bereik van uw gegevens tussen de onder- en bovengrens van het gekozen numerieke gegevenstype ligt.
| KLEININT( ) | -128 tot 127 normaal 0 tot 255 NIET ONDERTEKEND. |
| KLEINEINT( ) | -32768 tot 32767 normaal 0 tot 65535 NIET ONDERTEKEND. |
| GEMIDDELD( ) | -8388608 tot 8388607 normaal 0 tot 16777215 NIET ONDERTEKEND. |
| INT() | -2147483648 tot 2147483647 normaal 0 tot 4294967295 NIET ONDERTEKEND. |
| BIGINT( ) | -9223372036854775808 tot 9223372036854775807 normaal 0 tot 18446744073709551615 NIET ONDERTEKEND. |
| FLOAT | Een klein getal bij benadering met een zwevende komma. |
| DUBBEL( , ) | Een groot getal met een zwevende komma. |
| DECIMAAL( , ) | Een DOUBLE die als tekenreeks wordt opgeslagen, waardoor een vast aantal decimalen mogelijk is. Een goede keuze voor het opslaan van valutawaarden. |
Typen tekstgegevens
Zoals de naam van de gegevenstypecategorie al aangeeft, worden deze gebruikt om tekstwaarden op te slaan. Zorg er altijd voor dat de lengte van uw tekstuele gegevens de maximale lengte van de kolom niet overschrijdt.
| TEKEN( ) | Een vast gedeelte van 0 tot 255 tekens lang. |
| VARCHAR( ) | Een variabel gedeelte van 0 tot 255 tekens lang. |
| KLEINE TEKST | Een tekenreeks met een maximale lengte van 255 tekens. |
| TEKST | Een tekenreeks met een maximale lengte van 65535 tekens. |
| BLOB | Een tekenreeks met een maximale lengte van 65535 tekens. |
| MEDIUMTEKST | Een tekenreeks met een maximale lengte van 16777215 tekens. |
| MEDIUM BLOB | Een tekenreeks met een maximale lengte van 16777215 tekens. |
| LANGE TEKST | Een tekenreeks met een maximale lengte van 4294967295 tekens. |
| LANGBLOB | Een tekenreeks met een maximale lengte van 4294967295 tekens. |
Datum- en tijdgegevenstypen
Datum- en tijdgegevenstypen slaan kalender- en klokwaarden op in een vast formaat, waardoor sorteren en vergelijken betrouwbaar blijft.
| DATUM | YYYY-MM-DD |
| DATUM TIJD | JJJJ-MM-DD UU:MM:SS |
| TIJDSTAMP | JJJJMMDDUUMMSS |
| TIJD | HH: MM: SS |
Andere gegevenstypen
Naast de bovengenoemde zijn er nog enkele andere gegevenstypen in MySQL.
| ENUM | Om een āātekstwaarde op te slaan die is gekozen uit een lijst met vooraf gedefinieerde tekstwaarden. |
| SET | Dit wordt ook gebruikt voor het opslaan van tekstwaarden gekozen uit een lijst met vooraf gedefinieerde tekstwaarden. Het kan meerdere waarden hebben. |
| BOOL | Synoniem voor TINYINT(1), gebruikt om Booleaanse waarden op te slaan |
| BINARY | Vergelijkbaar met CHAR; het verschil is dat teksten in binaire vorm worden opgeslagen. |
| VARBINAIR | Vergelijkbaar met VARCHAR; het verschil is dat teksten in binaire vorm worden opgeslagen. |
Laten we nu eens kijken naar een query voor het maken van een tabel die alle gegevenstypen gebruikt. Bestudeer deze query en identificeer hoe elk gegevenstype is gedefinieerd in de onderstaande CREATE TABLE-code. MySQL voorbeeld.
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;
Beste werkwijzen voor het maken van een MySQL Database
Een paar conventies zorgen ervoor dat je scripts leesbaar blijven:
- Gebruik hoofdletters voor SQL-trefwoorden, bijvoorbeeld: āDROP SCHEMA IF EXISTS `MyFlixDB`;ā
- Sluit al je SQL-opdrachten af āāmet een puntkomma.
- Vermijd het gebruik van spaties in schema-, tabel- en veldnamen. Gebruik in plaats daarvan underscores om schema-, tabel- of veldnamen te scheiden.
- Geef de voorkeur aan InnoDB boven MyISAM voor nieuwe tabellen, omdat InnoDB transacties, vergrendeling op rijniveau en externe sleutels ondersteunt.
De querymethode is voltooid. De tweede route benadert dezelfde database vanuit een visueel model in plaats van met handgeschreven SQL.
Hoe maak je MySQL Werkbank ER-diagram Forward Engineering
MySQL Werkbank heeft hulpprogramma's die forward engineering ondersteunen. Voorwaartse techniek is de technische term die het proces beschrijft van het automatisch vertalen van een logisch model naar een fysieke implementatie.
We hebben een gemaakt ER-diagram in onze ER-modellering Les. We gaan nu dat ER-model gebruiken om de SQL-scripts te genereren waarmee we onze database gaan creƫren.
De MyFlix-database maken vanuit het MyFlix ER-model
Stap 1) Open het ER-model van de MyFlix-database. die u eerder hebt gemaakt.
Stap 2) Selecteer voorwaartse ingenieur
Klik op het menu Database en selecteer Forward Engineer.
Stap 3) Verbindingsopties
In het volgende venster kunt u verbinding maken met een instantie van MySQL server. Klik op de vervolgkeuzelijst voor opgeslagen verbindingen en selecteer lokale host. Klik op Uitvoeren.
Stap 4) Selecteer de onderstaande opties.
Selecteer de onderstaande opties in de wizard die verschijnt. Klik op Volgende.
Stap 5) Laat de selecties standaard staan āāen klik op Volgende.
Het volgende scherm toont een overzicht van de objecten in ons EER-diagram. Onze MyFlix-database bevat 5 tabellen. Laat de selecties standaard staan āāen klik op Volgende.
Stap 6) RevBekijk het SQL-script
In het onderstaande venster ziet u een voorbeeld van het SQL-script waarmee onze database wordt aangemaakt. Sla het script op als een *.sql-bestand of kopieer het naar het klembord en klik vervolgens op Volgende.
Stap 7) Voortgang vastleggen
Het onderstaande venster verschijnt zodra de database is aangemaakt op de geselecteerde locatie. MySQL Serverinstantie. De tabellen uit het ER-model bevinden zich nu fysiek op de server.
De database met voorbeeldgegevens is bijgevoegd. We zullen deze database in de volgende lessen gebruiken. Importeer hem eenvoudigweg in de code. MySQL Werkbank om mee te beginnen.
Klik hier om MyFlixDB te downloaden







.png)