Autor | Zpráva | ||
---|---|---|---|
ja.cz Profil * |
#1 · Zasláno: 28. 9. 2010, 17:12:55
Zdravím, po pár dnech jsem tu zas...
Pokouším se do databáze odeslat hodnotu null, ale ať dělám co dělám, vůbec se mi to nedaří. sloupec v databázi je nastaven takto: ... `sloupec` VARCHAR( 255 ) NULL, ... A zkoušel jsem do něj posílat proměnné s různým přiřazením NULL: $promenna = NULL; // v DB je uložen prázdný řetězec $promenna = null; // v DB je uložen prázdný řetězec $promenna = "NULL"; // v DB je uložen řetězec "NULL" Abych dostal do DB hodnotu NULL jako takovou, tak musím sql dotaz skládat pomocí PHP a prázdné hodnoty do DB neodesílat. Je to sice také řešení, ale myslím si, že to nějak musí jít, bohužel nevím jak a nemohu na to přijít. Poradíte mi prosím? Díky |
||
Joker Profil |
#2 · Zasláno: 28. 9. 2010, 17:22:14
ja.cz:
Nejspíš je špatně vkládací dotaz, tipuji, že jsou kolem hodnoty proměnné apostrofy. |
||
ja.cz Profil * |
#3 · Zasláno: 28. 9. 2010, 18:06:37
To jsem také zkoušel, možná jsem ten dotaz napsal špatně. Každopadně, pokud tam nemam uvozovky, tak dotaz neproběhne:
Když tedy použiji proměnnou: $promenna = NULL; Dále pak mám SQL dotaz: INSERT INTO `table` (`sloupec1`, `sloupec2`,`sloupec3`) VALUES ('".$promenna."', ".$promenna.", '".$promenna."') Echem vypsaný dotaz: INSERT INTO `table` (`sloupec1`, `sloupec2`,`sloupec3`) VALUES ('', , '') A odpověď databáze: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' '')' at line 2 |
||
Keeehi Profil |
#4 · Zasláno: 28. 9. 2010, 18:11:19 · Upravil/a: Keeehi
$promenna = "NULL"; INSERT INTO `table` (`sloupec1`, `sloupec2`,`sloupec3`) VALUES ('".$promenna."', ".$promenna.", '".$promenna."') INSERT INTO `table` (`sloupec1`, `sloupec2`,`sloupec3`) VALUES ('NULL', NULL, 'NULL') // ta prostřední je tvoje hledaná null, 1. a 3. jsou jen řetězce "NULL" |
||
ja.cz Profil * |
#5 · Zasláno: 28. 9. 2010, 18:20:11
Keeehi:
jop! Paráda, takto to opravdu funguje. Díky moc! |
||
Časová prodleva: 13 let
|
0