yo,
In diesem Fall muss unterschieden werden zwischen „nicht vorhanden“ (aka NULL) und „nicht angegeben“ (repräsentiert z. B. durch einen Leerstring). Oder, wie wir es hier in der Firma machen, allerdings aus anderen Gründen, denn genau das ist unsere Dienstleistung, man führt eine Anrufliste, in der so was protokolliert wird.
wird dir wenig nützen, solange du NULL für "nicht vorhanden" einsetzt. dies ist eine mehrinfo, die ich über den kunden habe und ich sollte sie entsprechend festhalten und zwar genau nicht mit NULL. und bei einem leerstring (im sinne von '') musst du auch aufpassen, der wird zum beispiel in Oracle als NULL interpertiert.
das alles damit zu regeln, dass ich die liste auf papier für alle zeiten aufbewahren muss, dass halte ich auch für wenig geschickt. dann habe ich ja keine möglichkeit per sql abfrage zu überprüfen, wer wurde schon angerufen und wer nicht (eventuell auch mit datum persisitieren und wer nicht).
mein grundsatz ist, NULL hat keine (und zwar wirklich gar keine) aussagekraft und damit liegt man eigentlich nie falsch. alles weitere kann dich nur von einer eventualität in die andere bringen. wenn ich informationen über den kunden gewinne und diese auch benötige, würde ich sie explizit speichern und nicht in einem NULL wert "verstecken".
Ilja