SQLite Valeurs NULL

LeNULLde SQLite est un terme utilisé pour représenter une valeur manquante. Une valeur NULL dans une table est une valeur affichée comme vide dans un champ.

Un champ avec une valeur NULL est un champ sans valeur. Il est très important de comprendre qu'une valeur NULL est différente d'une valeur zéro ou d'un champ contenant des espaces.

Syntaxe

Utilisé lors de la création d'une tableNULLLa syntaxe de base est la suivante :

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

Ici,NOT NULLIndique que la colonne accepte toujours des valeurs explicites du type de données donné. Il y a deux colonnes où nous n'avons pas utilisé NOT NULL, ce qui signifie que ces deux colonnes peuvent être NULL.

Un champ avec une valeur NULL peut être laissé vide lors de la création de l'enregistrement.

Exemple

Les valeurs NULL peuvent poser des problèmes lors de la sélection de données, car lorsqu'une valeur inconnue est comparée à une autre valeur, le résultat est toujours inconnu et ne sera pas inclus dans les résultats finaux. Supposons qu'il existe la table suivante, les enregistrements de COMPANY sont comme indiqué ci-dessous :

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Utilisons l'instruction UPDATE pour définir certaines valeurs qui permettent à null d'être NULL, comme indiqué ci-dessous :

sqlite> UPDATE COMPANY SET ADDRESS = NULL, SALARY = NULL where ID IN(6,7);

Maintenant, les enregistrements de la table COMPANY sont comme indiqué ci-dessous :

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22
7           James       24

Ensuite, regardonsIS NOT NULLl'utilisation de l'opérateur, qui est utilisée pour lister tous les enregistrements où SALARY n'est pas NULL :

sqlite> SELECT  ID, NAME, AGE, ADDRESS, SALARY
        FROM COMPANY
        WHERE SALARY IS NOT NULL;

L'instruction SQLite ci-dessus produira le résultat suivant :

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0

Ci-dessous se trouveIS NULLl'utilisation de l'opérateur, qui listera tous les enregistrements où SALARY est NULL :

sqlite> SELECT  ID, NAME, AGE, ADDRESS, SALARY
        FROM COMPANY
        WHERE SALARY IS NULL;

L'instruction SQLite ci-dessus produira le résultat suivant :

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
6           Kim         22
7           James       24
Autres extensions