Tach!
I.A. vermeiden DB-Designer NULL und setzen den Default "", so hab ich das bisher auch beim Transport gehandhabt.
Ich denke NULL ist ein Wert, der nicht übertragen wird.
Je nach System kann man einen Ersatzwert nehmen. Man braucht ja auch irgendeinen Mechanismus, der Strings von Zahlen und so weiter unterscheiden kann, und da muss man eben auch NULLs einbauen.
Warum sollte ich etwa den dritten Vornamen eines Kunden übertragen, wenn ich nicht weiss, ob er überhaupt einen dritten Vornamen hat? Der Wert "" bedeutet: Kein dritter Vorname vorhanden. Das wäre eine Information.
Was bitte sollte NULL bei einer Übertragung bewirken? Die Mitteilung der eigenen Unkennntnis?
Zum Beispiel das.
Gut, in CSV-Dateien verpflichtet man sich, für die oben genannten Felder Werte anzugeben. Aber wie willst du den Text "NULL" interpretieren? Irgend eine durchgeknallte Punkband heisst bestimmt "NULL" - und nun?
;;
← dazwischen ist ein NULL-Wert - oder ein Leerstring. Da man Strings nicht in Anführungszeichen setzen muss, ist NULL und Leerstring nicht unterscheidbar mit CSV transportierbar.
dedlfix.