MySQL Creazione di una tabella di base


Esempio

L'istruzione CREATE TABLE viene utilizzata per creare una tabella in un database MySQL.

CREATE TABLE Person (
    `PersonID`      INTEGER NOT NULL PRIMARY KEY,
    `LastName`      VARCHAR(80),
    `FirstName`     VARCHAR(80),
    `Address`       TEXT,
    `City`          VARCHAR(100)
) Engine=InnoDB;

Ogni definizione di campo deve avere:

  1. Nome campo: un nome campo valido. Assicurati di codificare i nomi in `-chars. Ciò garantisce che è possibile utilizzare ad esempio caratteri di spazio nel campo nomecampo.
  2. Tipo di dati [Lunghezza]: se il campo è CHAR o VARCHAR , è obbligatorio specificare una lunghezza del campo.
  3. Attributi NULL | NOT NULL : se viene specificato NOT NULL , qualsiasi tentativo di memorizzare un valore NULL in quel campo avrà esito negativo.
  4. Vedi di più sui tipi di dati e i loro attributi qui .

Engine=... è un parametro facoltativo utilizzato per specificare il motore di archiviazione della tabella. Se non viene specificato alcun motore di archiviazione, la tabella verrà creata utilizzando il motore di memorizzazione della tabella predefinito del server (solitamente InnoDB o MyISAM).

Impostazione delle impostazioni predefinite

Inoltre, se ha senso, è possibile impostare un valore predefinito per ogni campo utilizzando DEFAULT :

CREATE TABLE Address (
    `AddressID`   INTEGER NOT NULL PRIMARY KEY,
    `Street`      VARCHAR(80),
    `City`        VARCHAR(80),
    `Country`     VARCHAR(80) DEFAULT "United States",
    `Active`      BOOLEAN DEFAULT 1,
) Engine=InnoDB;

Se durante gli inserimenti non è specificato Street , quel campo sarà NULL quando recuperato. Quando non viene specificato alcun Country momento dell'introduzione, per impostazione predefinita verrà impostato "Stati Uniti".

È possibile impostare valori predefiniti per tutti i tipi di colonna, ad eccezione dei campi BLOB , TEXT , GEOMETRY e JSON .