SQLite - CREA tabella

SQLite CREATE TABLEviene utilizzata per creare una nuova tabella in uno qualsiasi del database specificato. La creazione di una tabella di base implica la denominazione della tabella e la definizione delle sue colonne e del tipo di dati di ciascuna colonna.

Sintassi

Di seguito è riportata la sintassi di base dell'istruzione CREATE TABLE.

CREATE TABLE database_name.table_name(
   column1 datatype PRIMARY KEY(one or more columns),
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype
);

CREATE TABLE è la parola chiave che dice al sistema di database di creare una nuova tabella. Il nome o l'identificatore univoco per la tabella segue l'istruzione CREATE TABLE. Facoltativamente, è possibile specificare database_name insieme a table_name .

Esempio

Di seguito è riportato un esempio che crea una tabella COMPANY con ID come chiave primaria e NOT NULL sono i vincoli che mostrano che questi campi non possono essere NULL durante la creazione di record in questa tabella.

sqlite> CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

Creiamo un'altra tabella, che useremo nei nostri esercizi nei capitoli successivi.

sqlite> CREATE TABLE DEPARTMENT(
   ID INT PRIMARY KEY      NOT NULL,
   DEPT           CHAR(50) NOT NULL,
   EMP_ID         INT      NOT NULL
);

Puoi verificare se la tua tabella è stata creata correttamente utilizzando il comando SQLite .tables comando, che verrà utilizzato per elencare tutte le tabelle in un database allegato.

sqlite>.tables
COMPANY     DEPARTMENT

Qui, puoi vedere la tabella COMPANY due volte perché mostra la tabella COMPANY per il database principale e la tabella test.COMPANY per l'alias "test" creato per il tuo testDB.db. È possibile ottenere informazioni complete su una tabella utilizzando il seguente SQLite.schema comando.

sqlite>.schema COMPANY
CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);