Zoeken…
Invoering
Syntaxis
- CREATE TABLE tabelnaam ([kolomnaam1] [datatype1] [, [kolomnaam2] [datatype2] ...])
parameters
Parameter | Details |
---|---|
tafel naam | De naam van de tabel |
kolommen | Bevat een 'opsomming' van alle kolommen in de tabel. Zie Een nieuwe tabel maken voor meer informatie. |
Opmerkingen
Tabelnamen moeten uniek zijn.
Maak een nieuwe tabel
Een eenvoudige tabel met Employees
, met een ID, en de voor- en achternaam van de werknemer samen met hun telefoonnummer kunnen worden gemaakt met behulp van
CREATE TABLE Employees(
Id int identity(1,1) primary key not null,
FName varchar(20) not null,
LName varchar(20) not null,
PhoneNumber varchar(10) not null
);
Dit voorbeeld is specifiek voor Transact-SQL
CREATE TABLE
maakt een nieuwe tabel in de database, gevolgd door de tabelnaam, Employees
Dit wordt gevolgd door de lijst met kolomnamen en hun eigenschappen, zoals de ID
Id int identity(1,1) not null
Waarde | Betekenis |
---|---|
Id | de naam van de kolom. |
int | is het gegevenstype. |
identity(1,1) | geeft aan dat de kolom automatisch gegenereerde waarden heeft die beginnen bij 1 en oplopen met 1 voor elke nieuwe rij. |
primary key | stelt dat alle waarden in deze kolom unieke waarden hebben |
not null | stelt dat deze kolom geen nulwaarden mag hebben |
Tabel maken van selecteren
Misschien wilt u een duplicaat van een tabel maken:
CREATE TABLE ClonedEmployees AS SELECT * FROM Employees;
U kunt een van de andere functies van een SELECT-instructie gebruiken om de gegevens te wijzigen voordat u deze aan de nieuwe tabel doorgeeft. De kolommen van de nieuwe tabel worden automatisch gemaakt op basis van de geselecteerde rijen.
CREATE TABLE ModifiedEmployees AS
SELECT Id, CONCAT(FName," ",LName) AS FullName FROM Employees
WHERE Id > 10;
Een tabel dupliceren
Ga als volgt te werk om een tabel te dupliceren:
CREATE TABLE newtable LIKE oldtable;
INSERT newtable SELECT * FROM oldtable;
CREËER LIJST MET BUITENLANDSE SLEUTEL
Hieronder vindt u de tabel Employees
met een verwijzing naar de tabel Cities
.
CREATE TABLE Cities(
CityID INT IDENTITY(1,1) NOT NULL,
Name VARCHAR(20) NOT NULL,
Zip VARCHAR(10) NOT NULL
);
CREATE TABLE Employees(
EmployeeID INT IDENTITY (1,1) NOT NULL,
FirstName VARCHAR(20) NOT NULL,
LastName VARCHAR(20) NOT NULL,
PhoneNumber VARCHAR(10) NOT NULL,
CityID INT FOREIGN KEY REFERENCES Cities(CityID)
);
Hier kunt u een database-diagram vinden.
De kolom CityID
van tabel Employees
zullen verwijzen naar de kolom CityID
van tabel Cities
. Hieronder kun je de syntaxis vinden om dit te maken.
CityID INT FOREIGN KEY REFERENCES Cities(CityID)
Waarde | Betekenis |
---|---|
CityID | Naam van de kolom |
int | type van de kolom |
FOREIGN KEY | Maakt de externe sleutel (optioneel) |
REFERENCES Cities(CityID) | Maakt de referentie naar de tabel Cities kolom CityID |
Belangrijk: u kunt niet verwijzen naar een tabel die niet in de database bestaat. Wees de bron om eerst de tafel Cities
en vervolgens de tafel Employees
. Als je het omgekeerd doet, zal het een foutmelding geven.
Maak een tijdelijke of geheugentabel
PostgreSQL en SQLite
Om een tijdelijke tabel lokaal voor de sessie te maken:
CREATE TEMP TABLE MyTable(...);
SQL Server
Om een tijdelijke tabel lokaal voor de sessie te maken:
CREATE TABLE #TempPhysical(...);
Een tijdelijke tabel maken die voor iedereen zichtbaar is:
CREATE TABLE ##TempPhysicalVisibleToEveryone(...);
Een geheugentabel maken:
DECLARE @TempMemory TABLE(...);