Ricerca…
introduzione
Sintassi
- CREATE TABLE tableName ([ColumnName1] [datatype1] [, [ColumnName2] [datatype2] ...])
Parametri
Parametro | Dettagli |
---|---|
tableName | Il nome del tavolo |
colonne | Contiene una "enumerazione" di tutte le colonne della tabella. Vedi Creare una nuova tabella per maggiori dettagli. |
Osservazioni
I nomi delle tabelle devono essere unici.
Crea una nuova tabella
È possibile creare una tabella Employees
base contenente un ID e il nome e il cognome del dipendente insieme al relativo numero di telefono
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
);
Questo esempio è specifico di Transact-SQL
CREATE TABLE
crea una nuova tabella nel database, seguita dal nome della tabella, Employees
Questo è seguito dall'elenco dei nomi delle colonne e delle loro proprietà, come l'ID
Id int identity(1,1) not null
Valore | Senso |
---|---|
Id | il nome della colonna. |
int | è il tipo di dati. |
identity(1,1) | afferma che la colonna avrà valori generati automaticamente a partire da 1 e incrementando di 1 per ogni nuova riga. |
primary key | afferma che tutti i valori in questa colonna avranno valori univoci |
not null | afferma che questa colonna non può avere valori nulli |
Crea tabella da Seleziona
Potresti voler creare un duplicato di una tabella:
CREATE TABLE ClonedEmployees AS SELECT * FROM Employees;
È possibile utilizzare qualsiasi altra funzionalità di un'istruzione SELECT per modificare i dati prima di passarli alla nuova tabella. Le colonne della nuova tabella vengono create automaticamente in base alle righe selezionate.
CREATE TABLE ModifiedEmployees AS
SELECT Id, CONCAT(FName," ",LName) AS FullName FROM Employees
WHERE Id > 10;
Duplica un tavolo
Per duplicare una tabella, fai semplicemente quanto segue:
CREATE TABLE newtable LIKE oldtable;
INSERT newtable SELECT * FROM oldtable;
CREA TABELLA CON CHIAVE STRANIERA
Di seguito è possibile trovare il tavolo Employees
con un riferimento alla tabella 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)
);
Qui puoi trovare un diagramma del database.
La colonna CityID
della tabella Employees
farà riferimento alla colonna CityID
di Table Cities
. Sotto puoi trovare la sintassi per farlo.
CityID INT FOREIGN KEY REFERENCES Cities(CityID)
Valore | Senso |
---|---|
CityID | Nome della colonna |
int | tipo della colonna |
FOREIGN KEY | Rende la chiave esterna (opzionale) |
REFERENCES Cities(CityID) | Fa il riferimento alla tabella Cities colonna CityID |
Importante: non è possibile creare un riferimento a una tabella che non esiste nel database. Sii la fonte per rendere prima il tavolo Cities
e secondo il tavolo Employees
. Se lo fai, viceversa, genererà un errore.
Crea una tabella temporanea o in memoria
PostgreSQL e SQLite
Per creare una tabella temporanea locale alla sessione:
CREATE TEMP TABLE MyTable(...);
server SQL
Per creare una tabella temporanea locale alla sessione:
CREATE TABLE #TempPhysical(...);
Per creare una tabella temporanea visibile a tutti:
CREATE TABLE ##TempPhysicalVisibleToEveryone(...);
Per creare una tabella in memoria:
DECLARE @TempMemory TABLE(...);