SQLite

Datenbank mit eingebetteter relationaler Datenbank

null

Englisch [nʌl] amerikanisch [nʌl]

adj. Wirksamkeit;

SQLite NULL-Funktion Syntax

Funktion: SQLites NULL wird verwendet, um ein Element mit einem fehlenden Wert darzustellen. Ein NULL-Wert in einer Tabelle ist ein Wert, der im Feld leer erscheint. Ein Feld mit einem NULL-Wert ist ein Feld ohne Wert. Es ist wichtig zu verstehen, dass sich NULL-Werte von Nullwerten oder Feldern mit Leerzeichen unterscheiden.

Syntax: Die grundlegende Syntax für die Verwendung von NULL beim Erstellen einer Tabelle lautet wie folgt:

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

Hier bedeutet NOT NULL, dass die Spalte immer einen expliziten Wert des angegebenen Datentyps akzeptiert. Es gibt hier zwei Spalten, die wir nicht mit NOT NULL verwenden, was bedeutet, dass diese beiden Spalten nicht NULL sein können.

Felder mit NULL-Werten können beim Erstellen von Datensätzen leer gelassen werden.

SQLite NULL-Funktion Beispiel

NULL 值在选择数据时会引起问题,因为当把一个未知的值与另一个值进行比较时,结果总是未知的,且不会包含在最后的结果中。假设有下面的表,COMPANY 的记录如下所示:

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

让我们使用 UPDATE 语句来设置一些允许空值的值为 NULL,如下所示:

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

现在,COMPANY 表的记录如下所示:

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

接下来,让我们看看 IS NOT NULL 运算符的用法,它用来列出所有 SALARY 不为 NULL 的记录:

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

上面的 SQLite 语句将产生下面的结果:

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

下面是 IS NULL 运算符的用法,将列出所有 SALARY 为 NULL 的记录:

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

上面的 SQLite 语句将产生下面的结果:

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