dedlfix: Leerer Datensatz

Beitrag lesen

echo $begrüßung;

Wann wird bei MySQL ein Leerstring ankommen und wann NULL?

Ausgehend vom Quelltext des OPs

$sql="INSERT INTO online (data1,data2)";
$sql.="VALUES('$data1','$data2')";

wird bei ihm immer ein Leerstring in der Datenbank landen, wenn seine Variablen einen Leerstring enthalten, vom PHP-Typ NULL (PHP-NULL != Datenbank-NULL) sind oder nicht gesetzt sind. Du siehst Stringbegrenzungszeichen um $data1 und $data2?

Ein Datenbank-NULL landet nur dann in der Datenbank wenn man in einen SQL-Befehl (INSERT, UPDATE) das SQL-Schlüsselwort NULL verwendet oder wenn durch Ausnutzen eines Default-Wert-Mechanismus ein als NULL definierter Default-Wert beim Datensatz-Anlegen eingetragen wird.

Ist ein Leerstring das gleiche, wie '   '?

Nein. Allgemein üblich spricht man von einem Leerstring, wenn man einen String hat, der keine Zeichen enthält, auch keine Leerzeichen.

Was macht die PHP-Text-Schnittstelle von MySQL daraus,

Mir ist nicht bekannt, dass MySQL eine PHP-Schnittstelle hat.

und was macht das DBMS später daraus?

Woraus genau und wie definierst du "später"?

echo "$verabschiedung $name";