Neuigkeiten:

still alive...

Hauptmenü

\"\" als NULL interpretieren

Begonnen von maui muc, 05. März 2009, 21:38:15

Vorheriges Thema - Nächstes Thema

maui muc

Hallo liebe Gemeinde  /uploads/emoticons/icon_e_smile.gif.f7ec63a2b1c3d90a9415e40455642502.gif\" alt=\":-)\" /> ,
der Titel sagt eigentlich schon alles. Ich wüsste gerne wie ich in SQL ein \"\" (leerer String) als NULL-Wert interpretiere. Das würde mir nämlich etliche Kontrollstrukturen in PHP ersparen.
Gruß
Stefan

k00ni


WHERE bla Is Null OR bla = \'\' 

 
 
Ist es das, was du meinst ?
 
Grüße

Powie

Wäre es nicht einfacher das Feld in der Tabelle richtig mit NULL oder NOT NULL zu definerien?

maui muc

Hallo,
besten Dank für deine Antwort.
Es ist genau der Punk, dass gewisse Felder als NOT NULL markiert sind.
Wenn ich \"\" in die DB schreibe entspricht das eben nicht dem NULL-Wert und der leere String wir in das Feld geschrieben. Ich will aber, dass ein \"\" als NULL eingetragen wird. Ist dann ein Feld mit NOT NULL markiert gibt es einen Fehler und das ist genau was ich will.
Gruß
Stefan

maui muc

Dieser Query mach mehr oder weniger was ich will:
INSERT INTO table SET name=IF(\"\'.$name.\'\"=\"\",NULL,\"\'.$name.\'\" );

Leerzeichen werden sogar eleminiert aber \\t, \\n, \\r usw. bleiben natürlich stehen.
Ich empfinde das sehr konstruiert und auch wenig elegant. Kommt das nur mir so vor?
Ich glaub da muss doch PHP herhalten. Was nur verdammt blöd ist, dass der PHP NULL-Wert nicht in einem SQL-Query als solcher erkannt wird.

Powie

Hmm.... jetzt ist echt die Frage was du mit dem ganzen Konstrukt erreichen willst, welshab du jetzt mit den NULL Werten solchen Aufwand betreibst. Man macht einfach keinen Insert in ein Feld wenn man nix reinschreiben will.
Was ist denn genau dein Begehr, was willst du erreichen? Das ist mir immer noch unklar.

raiser

Sofern ich mich erinnern kann, gibt es eine CAST-funktion in mysql, die es dir erlaubt, in NULL zu konvertieren. Leider weiss ich den Link nicht mehr, aber google sollte da doch helfen.
lG Henrik

Wissen ist das einzige Gut, dass sich vermehrt, wenn man es teilt! (Marie von Ebner-Eschenbach)




Irren ist menschlich!




Wer andern eine Grube gräbt,


sollte darüber nachdenken,


ob sie tief genug ist!!!!




Kameradschaft ist, wenn der


Kamerad schafft !!!!


Powie


all your base are belong to us