MySql a vložení záznamu – MySQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

MySql a vložení záznamu – MySQL – Fórum – Programujte.comMySql a vložení záznamu – MySQL – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
HoHo0
Newbie
15. 6. 2008   #1
-
0
-

Dobrý den,
narazil jsem na takový problém v MySql.

Vkládám do tabulky v databázi nový záznam, ale před tím jsem jeden smazal. Ten záznam, co jsem smazal, nebyl na spodním řádku tabulky. Když pak vložím ten nový záznam, vloží se mi na místo starého záznamu, který jsem před tím smazal. Dá se nějak udělat, aby se mi místo na místo původního příspěvku, vložil nakonec tabulky?

Vkládám záznam takto:

INSERT INTO diskuze VALUES (0 ,'".$Jmeno."', '".$Datum."', '".$Text"')


Děkuji za radu.
S pozdravem
Honza

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Reklama
Reklama
15. 6. 2008   #2
-
0
-

Mas nastaveny auto-increment? Jetsli je to to prvni policko tak bys mel pouzit spis DEFAULT nez nulu.

Nahlásit jako SPAM
IP: 81.30.238.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
HoHo0
Newbie
15. 6. 2008   #3
-
0
-

Ale tohle by nemělo řešit muj problém, že ne?

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Tocimanko0
Grafoman
15. 6. 2008   #4
-
0
-

To HoHo : Skús nastaviť tvojmu primárnemu identifikátoru (zrejme id alebo jednoducho prvá hodnota, ktorú v tvojom prípade vkladáš do db) vlastnosť AUTO_INCREMENT. To spôsobí, že nový záznam automaticky nadobudne hodnotu o jednotku väčšiu, než má posledný záznam.

Editoval Tocimanko: Zišla by sa štruktúra tvojej tabuľky pre rýchlejšie vyriešenie problému.

Nahlásit jako SPAM
IP: 195.91.82.–
Freelance copywriter
(web copywriting, sales letters, PR articles)
http://blog.tociman.net
HoHo0
Newbie
15. 6. 2008   #5
-
0
-

Ano, tohle mám nastaveno...

Ale vy jste asi nepochopili můj problém. Mám v databázi tabulku, kam si ukládám příspěvky z diskuze. Když pak jeden z těch příspěvků smažu (je např. uprostřed tabulky zaznamenaný), tak se mi smaže v pořádku. Ale pokud pak vložím nový záznam do tabulky, tak se mi ten záznam vloží na místo toho záznamu, který jsem před tím smazal, ale já ho chci vložit nakonec tabulky, úplně dolů... Už jsem to vysvětlil lépe? Chápete už můj problém?

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
HoHo0
Newbie
15. 6. 2008   #6
-
0
-

struktura mé tabulky:
první sloupec: ID - int(11) - auto_increment - Primary - Unique - Index
třetí sloupe: kdy - text
čtvrtý sloupe: text - text

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Tocimanko0
Grafoman
15. 6. 2008   #7
-
0
-

Chápal som to už od začiatku ;) Zvláštne. Tiež som používal istý čas mnou napísaný guestbook, ale pokiaľ som mal nastavený primary key na auto_increment, vždy, aj keď som zmazal nejaký záznam, sa priradilo o číslo väčšie id, než malo id posledného príspevku.

Btw: prečo používaš pre 'kdy' stĺpec dátového typu 'text'? Pokiaľ budeš chcieť príspevky triediť podľa dátumu/času, budú zbytočne problémy.

Nahlásit jako SPAM
IP: 195.91.82.–
Freelance copywriter
(web copywriting, sales letters, PR articles)
http://blog.tociman.net
HoHo0
Newbie
15. 6. 2008   #8
-
0
-

A ja si furt myslim, že si přesně nepochopil, co mam za problém. ID se mi vždy vloží správně, ale jde o pozici nově vkládaného řádku do tabulky.... Když ho vložím po smazání nějakého příspěvku do tabulky, tak se mi vloží na místo, kde jsem před tím smazal příspěvek....

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Tocimanko0
Grafoman
15. 6. 2008   #9
-
0
-

A načo tak nutne potrebuješ, aby sa ti v tabuľke vložil na koniec? Keď pomocou sql query (alebo iným spôsobom) cez SELECT FROM vytiahneš záznamy z db, fakt, že sa nevložil presne tam, kde si chcel, nijak neovplyvní výsledky.

Nahlásit jako SPAM
IP: 195.91.82.–
Freelance copywriter
(web copywriting, sales letters, PR articles)
http://blog.tociman.net
HoHo0
Newbie
15. 6. 2008   #10
-
0
-

NO, já to pak čtu z tabulky a chci, aby příspěvky byli přesně za sebou seřazený, jak byli vkládány podle datumu (případně ID)

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Quiark0
Věrný člen
15. 6. 2008   #11
-
0
-

Já to beru vždy tak, že záznamy v databázi nemají žádné explicitní uspořádání. Koneckonců se nad nimi staví B-stromy podle klíčů, což může to pořadí, v jakém byly záznamy vkládány, dost změnit. Pokud chci data v nějakém konkrétním pořadí, použiju v dotazu ORDER BY a je to. Příspěvek ve fóru by podle mě měl mít datum vložení a pak je řazení triviální.

Nahlásit jako SPAM
IP: 194.212.43.–
HoHo0
Newbie
15. 6. 2008   #12
-
0
-

Aha....diky moc...zatim v MySql zacinam, takze tuhle funkci jsem zatim neznal...diky moc za radu...pomohla mi k tomu, co jsem potreboval...

Nahlásit jako SPAM
IP: 90.176.243.–
http://hoblog.ic.cz
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý