Autor | Zpráva | ||
---|---|---|---|
bady Profil * |
#1 · Zasláno: 10. 2. 2006, 12:55:48
takze klasika, stranka nechavaju sa odkazy, zapis do mysql...
ale na stranke bude moznost zmazat prispevok, ku kazdemu prispevku mam priradeny id, situacia: povedzme ze niekto zmaze prispevok s id 4 a v databaze zostanu prispevky 1,2,3,5,6... atd. potom si niekto bude chcet prispevok pridat, ako mu mam priradit spravne id? lebo doteraz som to robil cez $pocet_riadkov = mysql_num_rows($prispevky); $id = $pocet_riadkov+1; ale to mi je teraz ked xem mazat prispevky na prd. ako mozem zistit hodnotu vzdy posledneho id? alebo ako mozem prepisat hodnoty vsetkych id aby sli spravne t.j. 1,2,3,4,5 a nie 1,2,4,7? dikes! |
||
Marty Profil |
#2 · Zasláno: 10. 2. 2006, 13:01:11 · Upravil/a: Marty
Když v databázi nastavíš sloupci "id" auto_increment bude se hodnota id generovat sama databází.
Pokud by jsi chtěl jiné řešení, bylo by nutné vybrat z databáze záznam s nejvyšším id, zjistit ho a pak s tím pracovat dále. |
||
ash Profil |
#3 · Zasláno: 10. 2. 2006, 13:03:34
ID príspevku je lepšie zadávať do tabuľky ako autoincrement, nemusíš sa starať, ktoré bude nasledujúce. A nie je dobré ho meniť.
Ak chceš mať na stránke číslovanie príspevkov zaradom, čísluj príspevky až pri vypisovaní bez ohľadu na to, aké id majú v tabuľke. |
||
roberta Profil |
#4 · Zasláno: 10. 2. 2006, 13:19:43
id sa nepoužíva na číslovanie záznamov, ale na jednoznačnú identifikáciu záznamu. takže je úplne jedno aké id je pridelené záznamu pri vkladaní do tabuľky...
|
||
bady Profil * |
#5 · Zasláno: 10. 2. 2006, 13:34:04
Diky hosi, ten auto increment sa mi paci!!! Ale som zaciatocnik, takze mi to neak nejde nastavit, ked dam add new field a vyplnim meno dlzku a do extra dam auto increment, dam save tak mi to vyhodi:
Error kde robim chybu? diky moc! |
||
Peca Profil |
#6 · Zasláno: 10. 2. 2006, 13:45:13
Při použití auto_increment musí být sloupec typu int. Varchar(5) je text o pěti znacích, není to číslo.
|
||
Tomáš Domanik Profil |
#7 · Zasláno: 10. 2. 2006, 13:47:58
ALTER TABLE `xyz` ADD `id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST ;
AUTO_INCREMENT nemoze byt retazec ale hodnota (int, smallint ....) a musi to byt KEY (FIRST definuje ze sa prida ako prvy stlpec) S pozdravom a prianim pekneho zbytku dna Tomas Domanik | iSOL.cz |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0