samenvatting: in deze tutorial laten we u zien hoe u het MySQL CREATE TABLE
statement gebruikt om een nieuwe tabel in de database aan te maken.
MySQL CREATE TABLE syntaxis
met hetCREATE TABLE
statement kunt u een nieuwe tabel in een database aanmaken.
het volgende illustreert de basissyntaxis van deCREATE TABLE
statement:
laten we de syntaxis in meer detail bekijken.,
eerst specificeert u de naam van de tabel die u wilt aanmaken na de sleutelwoorden CREATE TABLE
. De tabelnaam moet uniek zijn binnen een database. De IF NOT EXISTS
is facultatief. Hiermee kunt u controleren of de tabel die u maakt al bestaat in de database. Als dit het geval is, zal MySQL het hele statement negeren en geen nieuwe tabel aanmaken.
ten tweede geeft u een lijst met kolommen van de tabel op in de column_list
sectie, kolommen worden gescheiden door komma ‘ s.,
ten derde kunt u optioneel de opslag-engine voor de tabel opgeven in de ENGINE
clausule. U kunt elke opslag engine gebruiken, zoals InnoDB en MyISAM. Als je niet expliciet een storage engine declareert, zal MySQL standaard InnoDB gebruiken.
InnoDB werd de standaard storage engine sinds MySQL versie 5.5. De InnoDB storage engine brengt vele voordelen van een relationele database management systeem zoals zuur transactie, referentiële integriteit, en crash herstel. In de vorige versies gebruikte MySQL MyISAM als de standaard storage engine.,
het volgende toont de syntaxis voor de definitie van een kolom:
Hier zijn de details:
- De
column_name
specificeert de naam van de kolom. Elke kolom heeft een specifiek gegevenstype en optionele grootte, bijvoorbeeldVARCHAR(255)
- De
NOT NULL
beperking zorgt ervoor dat de kolom geenNULL
bevat. Naast deNOT NULL
beperking, kan een kolom extra beperking zoals CHECK en UNIQUE hebben. - de
DEFAULT
specificeert een standaardwaarde voor de kolom., - de
AUTO_INCREMENT
geeft aan dat de waarde van de kolom automatisch met één wordt verhoogd wanneer een nieuwe rij in de tabel wordt ingevoegd. Elke tabel heeft een maximum van éénAUTO_INCREMENT
kolom.
na de kolomlijst kunt u tabelbeperkingen definiëren zoals UNIQUE, CHECK, PRIMARY KEY en FOREIGN KEY.
als u bijvoorbeeld een kolom of een groep kolommen als primaire sleutel wilt instellen, gebruikt u de volgende syntaxis:
Code language: SQL (Structured Query Language) (sql)
MySQL CREATE TABLE statement examples
laten we enkele voorbeelden nemen van het maken van nieuwe tabellen.,
1) MySQL CREATE TABLE simple example
het volgende statement maakt een nieuwe tabel aan met de naam tasks
:
Code language: SQL (Structured Query Language) (sql)
de takenlijst heeft de volgende kolommen:
- De
task_id
is een auto-kolom verhogen. Als u de instructieINSERT
gebruikt om een nieuwe rij in de tabel in te voegen zonder een waarde voor de kolomtask_id
op te geven, zal MySQL automatisch een sequentieel geheel getal genereren voor detask_id
vanaf 1., - de
title
kolom is een kolom met variabele Tekenreeksen met een maximale lengte van 255. Het betekent dat u geen tekenreeks kunt invoegen waarvan de lengte groter is dan 255 in deze kolom. De beperkingNOT NULL
geeft aan dat de kolomNULL
niet accepteert. Met andere woorden, u moet een niet-NULL waarde opgeven wanneer u deze kolom invoegt of bijwerkt. - de
start_date
endue_date
zijnDATE
kolommen., Omdat deze kolommen niet de beperkingNOT NULL
hebben, kunnen zeNULL
opslaan. De kolom start_date heeft een standaardwaarde van de huidige datum. Met andere woorden, als u geen waarde opgeeft voor de kolom start_date wanneer u een nieuwe rij invoegt, neemt de kolom start_date de huidige datum van de databaseserver. - de
status
enpriority
zijn deTINYINT
kolommen dieNULL
niet toestaan., - de kolom
description
is een kolomTEXT
dieNULL
accepteert. - de
created_at
is eenTIMESTAMP
kolom die de huidige tijd als standaardwaarde accepteert.
de task_id
is de primaire sleutelkolom van de tasks
tabel. Dit betekent dat de waarden in de kolom task_id
rijen in de tabel uniek identificeren.,
als je Eenmaal het uitvoeren van het CREATE TABLE
– instructie voor het maken van de tasks
tabel, kunt u de structuur met behulp van de DESCRIBE
verklaring:
Code language: SQL (Structured Query Language) (sql)
Deze foto ziet u de database diagram van de tasks
tabel:
2) MySQL TABEL MAKEN met een vreemde sleutel primaire sleutel voorbeeld
Stel elke taak heeft een checklist of to-do lijst., Om controlelijsten van taken op te slaan, kunt u als volgt een nieuwe tabel maken met de naam checklists
:
de tabel checklists
heeft een primaire sleutel die bestaat uit twee kolommen., Daarom hebben we een tabel beperking voor het definiëren van de primaire sleutel:
Code language: SQL (Structured Query Language) (sql)
daarnaast is de task_id
is de vreemde sleutel kolom verwijzingen naar de task_id
kolom van de tabel tasks
gebruiken we een foreign key constraint tot deze relatie:
Je leert meer over de foreign key constraint in de volgende tutorial.,
Deze foto illustreert de checklists
tabel en de relatie met de tasks
tabel:
In deze tutorial, je hebt geleerd hoe te gebruiken MySQL CREATE TABLE
– instructie voor het maken van een nieuwe tabel in de database.
- Was deze tutorial nuttig?
- YesNo