Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" 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