Prázdne stĺpce v PostgreSQL
·
Igor Kulman
Včera som pri práci narazil na zaujímavý problém, a to vkladanie prázdnych hodnôt do stĺpcov typu Date v PostgreSQL. Ak nie je požadovaná položka vyplnená vo formulári, na PHP skript je poslaná ako prázdny reťazec, PostgreSQL zahlási chybu.
Ako možné riešenie som našiel nasledujúci kód:
$length_str = $_POST['trk_length'];
if (empty($length_str))
$trk_length = NULL;
else
$trk_length = "'".$length_str."'";
$result = pg_query($conn, "INSERT INTO track (field1, field2, trk_length)
VALUES ('$var1', '$var2', $trk_length)");
V mojom prípade to však nejako nefungovalo, pomohla však menšia úprava, a to uzavrieť NULL do úvodzoviek, teda:
$length_str = $_POST['trk_length'];
if (empty($length_str))
$trk_length = "NULL";
else
$trk_length = "'".$length_str."'";
$result = pg_query($conn, "INSERT INTO track (field1, field2, trk_length)
VALUES ('$var1', '$var2', $trk_length)");