Autor | Zpráva | ||
---|---|---|---|
rikrek Profil * |
#1 · Zasláno: 21. 2. 2018, 11:52:19
Dobrý den,
mám tento kod v procedure = 1 THEN select overview from `data_overview` where `data_id` = `dataID` and `language_id` = `langID`; else select overview from `data_overview` where `data_id` = `dataID` and `language_id` = `9`; end if; Bohužel mě vrací #1054 - Neznámý sloupec '9' v where clause a já už si fakt nevím rady :( Ten neznámý sloupec to hází na `language_id` = `9` a fakt netuším proč
Budu rád za případnou pomoc, Díky |
||
Keeehi Profil |
Protože máš kolem devítky zpětné apostrofy. Smaž je a máš to. Zpětnými apostrofy můžeš databázi říct, ze se jedná o název sloupce, tabulky nebo databáze. Proto devítku považuje za sloupec.
|
||
rikrek Profil * |
#3 · Zasláno: 21. 2. 2018, 12:13:17
Dekuji za rychlou reakci, bohuzel jsem to zkousel jiz pred tim, nez jsem psal. Pokud odstranim apostrofy dostanu se do této chyby
Při analýze bylo nalezeno 1 chyb. Missing expression. (near "ON" at position 25) a #2014 - Commands out of sync; you can't run this command now select za THEN se vykona, ale za else už to háže zmíněnou chybu. |
||
Kajman Profil |
#4 · Zasláno: 21. 2. 2018, 12:26:26
Ale ta nová chyba upozorňuje na jinou část procedury, než, kterou jste poslal. Pokud jste tam měl chyby dvě, tak nestačí opravit jednu.
|
||
rikrek Profil * |
Zde posílám celou, nevím zda jdu na to dobře, přeci jen, každý nějak začíná, ale nějak jsi nejsem vědom, že je zde chybka, chápu uřčitě by to šlo napsat jinak, to je mi jasné, ovšem jako pokus by to snad jet mělo. Když se provede if a zvolí se tedy select za then, tak to vypíše, pokud to skočí do else, tak už píše zmíněnou chybu...
begin if (select count(id) from `data_overview` where `data_id` = dataID and `language_id` = langID) = 1 THEN select overview from `data_overview` where `data_id` = dataID and `language_id` = langID; else select overview from `data_overview` where `data_id` = dataID and `language_id` = 9; end if; end Zajímavé, tak adminer to vrací bez chyby a jede to jak má, ale phpmyadmin vypisuje co vypisuje, tak nevím. A když to vyvolám v php, tak to jede taky... |
||
Časová prodleva: 6 let
|
0