Autor | Zpráva | ||
---|---|---|---|
TomusaZZ Profil * |
#1 · Zasláno: 16. 1. 2009, 03:03:36
Hledal jsem, hledal, jestli se s tím tady někdo nesetkal, ale buď jsem hledal špatně, nebo to tu není.
Nepojmenovávejte sloupec v MySQL jako "no" ale nějak jinak. Nevim jestli to je nějakej spešl systémovej název, nebo ne, nebo jestli je problém jen v nějaké verzi php, ale narazil jsem na to. jakmile dáte takovou podmínky v dotazu: např. WHERE no < 1 - tak ta podmínka neprojde, i když má hodit TRUE, stejně tak jako třeba v kódu if ($radek[no]<=6).... ale echo $radek[no]; to vypíše úplně bez problémů Setkal se s tím taky někdo nebo mě máte za fanatika? Googlil jsem a nic. Schválně si to zkuste. Sloupce mám INT. Tady se taky zdlouhavě něco řešilo, a měl sloupec NO - nevím jestli je to stejnej případ ale |
||
_es Profil |
#2 · Zasláno: 16. 1. 2009, 07:24:38 · Upravil/a: _es
Stĺpec môže byť pomenovaný rôzne, napríklad aj where alebo table alebo no,
no v týchto prípadoch sa na neho treba odkazovať ako na `where` `table` `no`. ` je znak na anglickej klávesnici vľavo hore. |
||
Joker Profil |
#3 · Zasláno: 16. 1. 2009, 09:27:38
TomusaZZ
Tady je seznam rezervovaných slov pro MySQL: http://dev.mysql.com/doc/refman/5.1/en/reserved-words.html "NO" tam ovšem není. Každopádně, když se to napíše: WHERE `no` < 1, funguje to? |
||
TomusaZZ Profil * |
#4 · Zasláno: 16. 1. 2009, 09:56:52
když se napíše if ($radek[`no`]<=6) tak nefunguje
|
||
Joker Profil |
#5 · Zasláno: 16. 1. 2009, 10:01:43
TomusaZZ
No jasněže nefunguje, ale to není to, co jsem psal já. Já jsem mluvil o SQL dotazu. V PHP kódu to má být v uvozovkách, když jsme u toho. |
||
_es Profil |
#6 · Zasláno: 16. 1. 2009, 10:05:58
Joker
„"NO" tam ovšem není. “ Ale NO je v mnohých príkazoch MySQL, napríklad http://dev.mysql.com/doc/refman/5.0/en/commit.html. Tak to asi niekedy môže kolidovať. „Každopádně, když se to napíše: WHERE `no` < 1, funguje to?“ Malo by to fungovať: http://dev.mysql.com/doc/refman/5.0/en/identifiers.html |
||
Joker Profil |
#7 · Zasláno: 16. 1. 2009, 10:09:27
_es
Ha, už to mám: MySQL allows some keywords to be used as unquoted identifiers because many people previously used them. Examples are those in the following list: ACTION BIT DATE ENUM NO TEXT TIME TIMESTAMP ...což ale na druhou stranu znamená, že podle manuálu by to mělo fungovat. No, možná to je ta teorie a praxe. |
||
TomusaZZ Profil * |
#8 · Zasláno: 16. 1. 2009, 10:13:29
ha to je ono :-)
|
||
_es Profil |
#9 · Zasláno: 16. 1. 2009, 10:35:46
Najlepšie je dávať identifikátory do `` aj vtedy, keď to nie je nutné.
Také príkazy budú asi aj rýchlejšie spracované. |
||
Časová prodleva: 15 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0