SQL - NOT NULL Constraint

Per impostazione predefinita, una colonna può contenere valori NULL. Se non si desidera che una colonna abbia un valore NULL, è necessario definire un tale vincolo su questa colonna specificando che NULL non è ora consentito per quella colonna.

Un NULL non è la stessa cosa di nessun dato, piuttosto rappresenta dati sconosciuti.

Esempio

Ad esempio, la seguente query SQL crea una nuova tabella denominata CUSTOMERS e aggiunge cinque colonne, tre delle quali sono ID NAME e AGE, In questo specifichiamo di non accettare NULL -

CREATE TABLE CUSTOMERS(
   ID   INT              NOT NULL,
   NAME VARCHAR (20)     NOT NULL,
   AGE  INT              NOT NULL,
   ADDRESS  CHAR (25) ,
   SALARY   DECIMAL (18, 2),       
   PRIMARY KEY (ID)
);

Se la tabella CUSTOMERS è già stata creata, per aggiungere un vincolo NOT NULL alla colonna SALARY in Oracle e MySQL, dovresti scrivere una query come quella mostrata nel seguente blocco di codice.

ALTER TABLE CUSTOMERS
   MODIFY SALARY  DECIMAL (18, 2) NOT NULL;
sql-rdbms-concepts.htm