Autor | Zpráva | ||
---|---|---|---|
adamico Profil |
#1 · Zasláno: 15. 6. 2008, 16:56:26
Zdravím,
tento kód mi v pohode funguje: INSERT INTO $autor VALUES (null,null,'$list')" avšak akonáhle ho zmením takto: INSERT IF NOT EXISTS INTO $autor VALUES (null,null,'$list')" tak už nefunguje.. Vie mi niekto poradť ako vyriešiť tento problém ? Alebo vie niekto ako sa dá nahradiť príkaz INSERT IF NOT EXISTS ? Lebo REPLACE nefunguje.. |
||
nightfish Profil |
#2 · Zasláno: 15. 6. 2008, 16:59:57 · Upravil/a: nightfish
takováto syntaxe není možná...
zřejmě sháníš INSET INTO ... ON DUPLICATE KEY UPDATE ... http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html |
||
kletely Profil |
#3 · Zasláno: 15. 6. 2008, 17:01:01
adamico
Možno google by ti pomohol. http://www.xaprb.com/blog/2005/09/25/insert-if-not-exists-queries-in-m ysql/ |
||
souki Profil |
#4 · Zasláno: 15. 6. 2008, 17:05:48
adamico
a nehledáš jenom UNIQUE klíč? |
||
adamico Profil |
#5 · Zasláno: 15. 6. 2008, 17:12:05
souki
a nehledáš jenom UNIQUE klíč? neviem :).. moje vedomosti z databáz sú veľmi nízke, ja som len chcel, aby sa mi do tabulky nezadal ten istý údaj niekoľko krát lebo potom ked si dám vypísať tabulku, tak aby tam nebol tri razy ten istý údaj. |
||
Keeehi Profil * |
#6 · Zasláno: 15. 6. 2008, 18:06:47 · Upravil/a: Keeehi
zkus toto
INSERT IF NOT EXISTS INTO $autor (jmeno_prvniho_sloupce,jmeno_druheho_sloupce,jmano_tretiho_sloupce) VALUES (null,null,'$list')" nebo REPLACE INTO $autor (jmeno_prvniho_sloupce,jmeno_druheho_sloupce,jmano_tretiho_sloupce) VALUES (null,null,'$list') u replace musí být třetí sloupec PRIMARY KEY |
||
adamico Profil |
#7 · Zasláno: 15. 6. 2008, 18:12:54 · Upravil/a: adamico
Keeehi
nefunguje, hádže chybu.. s REPLACE som to skúšal, ale to tiež nefunguje.. ako nechápem.. Uvádzam celý kód: <? do { @$spojeni = MySQL_Connect("localhost", "user", "pass"); if (!$spojeni): echo "Nepodarilo sa pripojit k MySQL.<BR>\n"; break; endif; MySQL_Select_DB("crzsdubova_sk"); $result="CREATE TABLE IF NOT EXISTS $autor ( poradi int not null auto_increment, autor varchar(40) null, citat text not null, primary key(poradi) )"; mysql_query($result) or die(mysql_error()); $hlaska = "<br><h3>Užívateľ nebol pridaný do priateľov !</h3><BR>\n" ; if(!$citat): echo"Chýba užívateľ \n".$hlaska; break; endif; @$vysledek = MySQL_Query("INSERT INTO $autor VALUES (null,null,'$citat')"); if (!$vysledek): echo "Došlo k chybe pri spracovaní dotazu v databazi.<BR>\n"; break; else: echo "Užívateľ bol pridaný medzi priateľov<br>\n"; endif; } while (false); include "menu.php"; ?> |
||
sicario Profil |
#8 · Zasláno: 15. 6. 2008, 22:56:18
1) co je to za konstrukci do { ... } while (false); ?
2) INSERT IF NOT EXIST jsem nikde nevidel, ale jestli to dobre chapu, hledas INSERT IGNORE, ktere v pripade duplicity unique sloupce neprovede nic (ani nezahlasi chybu). Ted se koukam na ten zdrojovy kod a prilis netusim o co ti jde, zkus to popsat slovy. |
||
adamico Profil |
#9 · Zasláno: 16. 6. 2008, 14:39:54
sicario
Nezostavolval som to ja: http://www.builder.cz/art/php/citaty.html Pokiaľ tam dám INSERT IGNORE, tak to aj tak pridáva ten údaj.. Neviem ako mám zadať údaj (počítam že pri create table), aby bol $citat unique. |
||
Kajman_ Profil * |
#10 · Zasláno: 16. 6. 2008, 15:43:58
Index můžete definovat při vytváření tabulky i později viz.
http://dev.mysql.com/doc/refman/5.0/en/create-index.html |
||
adamico Profil |
#11 · Zasláno: 16. 6. 2008, 15:58:38
Kajman_
vôbec nepoznám syntax sql, nemohol by si mi prosím ťa napísať rovno celý kód ktorý by v mojom prípade spravil unique index z $citat ? ďakujem.. |
||
Časová prodleva: 16 let
|
0