Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

SQL Empty String nicht Null

Begonnen von silentwolf, November 26, 2018, 11:01:32

⏪ vorheriges - nächstes ⏩

silentwolf

Hallo,

habe folgenden SQL String der aber leider nur Daten die Null sind updated.
Wie muss dieser denn aussehen um Leere Zellen upzudaten?


    strSQL = "UPDATE " & strTable & " SET Umsatztext = [Buchungstext] " & _
                "WHERE (((Umsatztext) Is Null));"
    db.Execute strSQL


Vielen Dank!

Gruß Albert

MzKlMu

Hallo,
leere Felder sind NULL.
Was kann denn statt dessen drin sein ?
Ein Leerstring oder Leerzeichen ?

Gruß Klaus

silentwolf

Hallo,
danke für die Antwort.
Ich habe es in dem Abfrageentwurf erstellt und bekam es hin mit diesen SQL string.

UPDATE tblNeu SET tblNeu.Umsatztext = [Buchungstext]
WHERE (((tblNeu.[Umsatztext])=""));

Sollte eigentlich einfach leer sein der Datensatz.
Bekomme es aber leider nicht im Code hin..

Vielen Dank

DF6GL

#3
Hallo,

was sind denn "leere" Zellen im Gegensatz zu "NULL"-Zellen?

Vielleicht meinst Du Zellen (Felder), die einen Leerstring oder Leerzeichen enthalten..:

Zitat"WHERE nz(Umsatztext,'') = '';"

evtl:
Zitat"WHERE nz(Umsatztext,' ') = ' ';"

Die "roten" Zeichen sind jeweils 2 Hochkommata, keine Gänsefüße.

PS:

Falls doch ein oder mehrere Leerzeichen im Feld enthalten sind, was normalerweise bei Formular-Eingaben nicht vorkommt, nur wenn per Insert-Abfrage Felder gefüllt werden, dann benutz die LEN-Funktion, um solche Felder zu erkennen.

silentwolf

Hallo Franz,

vielen Dank ja Datenfelder sind es.
Es funktioniert so wie Du es geschrieben hast!

Vielen herzlichen Dank!!

Josef P.

#5
Hallo!

Anm.:
Falls einmal ein Index genutzt werden soll,
statt
WHERE nz(Umsatztext,' ') = ' '
einen indexfreundlichen Ausdruck verwenden.
WHERE (Umsatztext IS NULL or Umsatztext = ' ')
.. Das ist allerdings für einmalige Aktionen nicht relevant.

mfg
Josef