SQLite
 sql >> Datenbank >  >> RDS >> SQLite

nullvalue:NULL-Werte in SQLite anzeigen

Wenn Sie die SQLite-Befehlszeilenschnittstelle (CLI) verwenden, ist die Ausgabe standardmäßig immer dann, wenn eine Abfrage einen Nullwert zurückgibt, die leere Zeichenfolge ('' ).

Wir können dies ändern, indem wir den -nullvalue verwenden Befehlszeilenoption beim Starten von SQLite.

Wir können auch den .nullvalue verwenden dot-Befehl, wenn wir uns bereits in der SQLite-CLI befinden.

Der -nullvalue Möglichkeit

Wir können den -nullvalue verwenden Option beim Starten von SQLite.

Hier ist ein Beispiel:

sqlite3 -nullvalue null

In diesem Fall wird immer, wenn ich auf einen Nullwert stoße, der Text null Wird zurückgegeben. Ich habe null verwendet in diesem Beispiel, aber das könnte ein beliebiger Text sein.

Das Starten von SQLite ohne diese Option hätte -nullvalue gesetzt in die leere Zeichenfolge.

Der .nullvalue Punkt-Befehl

Wenn wir uns bereits in SQLite befinden, müssen wir es nicht beenden und neu starten, um unseren nullvalue zu ändern die Einstellungen. Wir können den .nullvalue verwenden stattdessen Punktbefehl

Beispiel:

.nullvalue null

Nur um das klarzustellen, das muss innerhalb der SQLite-Befehlsshell ausgeführt werden (d. h. nachdem Sie SQLite bereits gestartet haben).

Auch hier können wir wieder beliebigen Text verwenden, um Nullwerte darzustellen.

Beispiel

Lassen Sie uns nullvalue setzen beim Starten von SQLite:

sqlite3 -nullvalue n/a

Jetzt wird immer dann, wenn ein Nullwert zurückgegeben wird, die Zeichenfolge n/a ausgegeben.

Machen wir das:

SELECT 1/0;

Ergebnis:

+-----+
| 1/0 |
+-----+
| n/a |
+-----+

Das Teilen einer Zahl durch Null gibt einen Nullwert zurück. In unserem Fall erhalten wir n/a , was genau wie erwartet ist.

Jetzt ändern wir unseren nullvalue Einstellungen:

.nullvalue null

Und führen Sie die Abfrage erneut aus:

SELECT 1/0;

Ergebnis:

+------+
| 1/0  |
+------+
| null |
+------+

Jetzt erhalten wir den String null immer wenn ein Nullwert zurückgegeben wird.

Die Standardeinstellung

Angenommen, wir starten SQLite, ohne nullvalue festzulegen :

sqlite3

Hier öffnen wir das Terminal oder die Eingabeaufforderung unseres Computers und geben den Befehl zum Starten von SQLite ein (z. B. sqlite3 ) ohne Angabe von Optionen.

Wenn wir nun eine Abfrage ausführen, die einen Nullwert zurückgibt, erhalten wir die leere Zeichenfolge:

SELECT 1/0;

Ergebnis:

+-----+
| 1/0 |
+-----+
|     |
+-----+

Das ist das Standardergebnis für Nullwerte. Das bekommen wir, wenn wir den -nullvalue nicht verwenden Option oder .nullvalue Punkt-Befehl.