kein Wert - NULL in Mysql

kein Wert - NULL in Mysql

am 06.02.2006 14:06:10 von ichbins

Hallo und guten Tag,

in eine Spalte in einer Tabelle ist der Wert NULL erlaubt.
Mit MyAdmin habe ich den Standardwert NULL eingesetzt.
Die Tabelle wird mit mit Daten aus einem Formular mit php gefüllt.

Wenn das Formularfeld leer ist, sollte dann in der Datenbank
nicht auch Null stehen?

Ich habe schon IFNULL (NULL,'$KDFax') probiert,
Dann wird NULL als String interpretiert.

Wie mache ich denn das ?

Gruss
Jürgen

Re: kein Wert - NULL in Mysql

am 06.02.2006 14:14:33 von Dominik Echterbruch

Jürgen Gryska wrote:
>
> in eine Spalte in einer Tabelle ist der Wert NULL erlaubt.
> Mit MyAdmin habe ich den Standardwert NULL eingesetzt.
> Die Tabelle wird mit mit Daten aus einem Formular mit php gefüllt.
>
> Wenn das Formularfeld leer ist, sollte dann in der Datenbank
> nicht auch Null stehen?

Das kommt darauf an, was du in die DB schreibst. Ob mit PHP oder
händisch ist erst mal egal.
Wichtig dabei ist eigentlich nur, daß ein leerer String etwas anderes
ist, als NULL. NULL bedeutet nicht definiert. Ein leerer String ist aber
durchaus etwas definiertes (nämlich eine Zeichenkette der Länge null).

> Ich habe schon IFNULL (NULL,'$KDFax') probiert,
> Dann wird NULL als String interpretiert.

Diese Aussage verstehe ich nicht.


Grüße,
Dominik
--
MonstersGame - Die Schlacht zwischen Vampiren und Werwölfen
http://spielwelt6.monstersgame.net/?ac=vid&vid=3018786

Re: kein Wert - NULL in Mysql

am 06.02.2006 14:14:44 von Fabian Schladitz

Jürgen Gryska schrieb:
> Hallo und guten Tag,
>=20
> in eine Spalte in einer Tabelle ist der Wert NULL erlaubt.
> Mit MyAdmin habe ich den Standardwert NULL eingesetzt.
> Die Tabelle wird mit mit Daten aus einem Formular mit php gefüllt.
>=20
> Wenn das Formularfeld leer ist, sollte dann in der Datenbank
> nicht auch Null stehen?
>=20
> Ich habe schon IFNULL (NULL,'$KDFax') probiert,
> Dann wird NULL als String interpretiert.
>=20
> Wie mache ich denn das ?

Du hast ein PHP-Problem, ich habe entsprechend das FU gesetzt.

Du musst beim INSERT darauf achten, dass du leere Felder entsprechend=20
behandelst.

z.B.:

if(!is_set($_GET['meine_checkbox'])) {
$meine_checkbox_value =3D 'NULL';
} else {
$meine_checkbox_value =3D '"meine Checkbox war angeklickt."';
}

$sql =3D "INSERT INTO mytable (checkbox) VALUES ($meine_checkbox_value)";=


--=20
HTH,
Fabian

Re: kein Wert - NULL in Mysql

am 06.02.2006 14:14:44 von Fabian Schladitz

Jürgen Gryska schrieb:
> Hallo und guten Tag,
>=20
> in eine Spalte in einer Tabelle ist der Wert NULL erlaubt.
> Mit MyAdmin habe ich den Standardwert NULL eingesetzt.
> Die Tabelle wird mit mit Daten aus einem Formular mit php gefüllt.
>=20
> Wenn das Formularfeld leer ist, sollte dann in der Datenbank
> nicht auch Null stehen?
>=20
> Ich habe schon IFNULL (NULL,'$KDFax') probiert,
> Dann wird NULL als String interpretiert.
>=20
> Wie mache ich denn das ?

Du hast ein PHP-Problem, ich habe entsprechend das FU gesetzt.

Du musst beim INSERT darauf achten, dass du leere Felder entsprechend=20
behandelst.

z.B.:

if(!is_set($_GET['meine_checkbox'])) {
$meine_checkbox_value =3D 'NULL';
} else {
$meine_checkbox_value =3D '"meine Checkbox war angeklickt."';
}

$sql =3D "INSERT INTO mytable (checkbox) VALUES ($meine_checkbox_value)";=


--=20
HTH,
Fabian