Ricerca…


introduzione

L'istruzione CREATE TABLE viene utilizzata per creare una nuova tabella nel database. Una definizione di tabella consiste in un elenco di colonne, i loro tipi e eventuali vincoli di integrità.

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.

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(...);


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow