Autor Zpráva
AntonP
Profil
Dobrý deň,

prejdem hneď k veci. Potreboval by som vedieť, akým SQL príkazom vymažem PRIMARY KEY zo stĺpca "id" a tabuľky "all_tickets". Hľadal som, ale nefunfuje ani jeden z nájdených. Ďakujem za každú radu, poprípade celý príkaz. Prajem pekný zvyšok dňa.

// Našiel som iba tento príkaz:
ALTER TABLE all_tickets
DROP PRIMARY KEY;
Kajman
Profil
Vypadá to korektně. Co nyní ukazuje následující příkaz?
SHOW CREATE TABLE all_tickets

Co hlásí příkaz z [#1] za chyby či varování?
kolemjdoucí
Profil *
Doporučuji pro správu databází adminer a ten tyhle věci umí na jedno dvě kliknutí.
Používám ho již řadu let a nejen pro všelijaké indexy, ale i samotnou správu je to neocenitelný pomocník.
AntonP
Profil
Kajman:
Prvý príkaz hlási chybu: #1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

Príkaz, ktorý ste napísali ukáže
Kajman
Profil
AntonP:
A text za těmi třemi tečkami ve sloupci Create Table mi řekne věštecká koule? Dejte sem text, co to vrací, ne screenshot s kouskem textu, co to vrací.

Možná budete muset u sloupce id zrušit vlastnost autoincrement, ale bez toho chtěného textu se to nedá poskládat.
AntonP
Profil
Ospravedlňujem sa, keď som na to klikal tak sa nič nedialo, tak som myslel, že to je asi všetko.
CREATE TABLE `all_tickets` (
 `id` int(6) unsigned NOT NULL AUTO_INCREMENT,
 `subject` varchar(30) COLLATE utf8_czech_ci NOT NULL,
 `description` varchar(500) COLLATE utf8_czech_ci NOT NULL,
 `creator` varchar(30) COLLATE utf8_czech_ci NOT NULL,
 `status` varchar(100) COLLATE utf8_czech_ci DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci
Kajman
Profil
Zkuste nejdříve odstranit vlastnost auto_increment u sloupce id a pak teprve primární klíč odstranit.
ALTER TABLE `all_tickets` MODIFY COLUMN `id` int(6) unsigned NOT NULL;
ALTER TABLE `all_tickets` DROP PRIMARY KEY;

Ale fantazie mi dochází, když se snažím představit důvody, které k tomuto požadavku vedly.
AntonP
Profil
Ďakujem, funguje. No, ide o to, že to je ticket systém. Keď sa ticket vytvoril, tak mu php dalo vždy hodnotu id o 1 väčšiu ako je najväčšie id v stĺpci. Ale očividne keď na tom ID bol PRIMARY KEY, tak vždy keď som vymazal ticket napr. s id 5 a vytvoril ďalší, tak to nevytvorilo ticket s id 5 - aj napriek tomu, že zázanm s id 5 tam už nebol - ale s ID 6. Teraz to už aj po zmazaní a znovuvytvorení funguje a vytvrára pekne porade. Ďakujem za pomoc
Kajman
Profil
Některé časteji řešené dotazy pro MySQL - FAQ » Recyklování primárních klíčů smazaných záznamů

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0