Autor | Zpráva | ||
---|---|---|---|
OnZ Profil |
#1 · Zasláno: 19. 11. 2008, 15:17:07
Zdravím, mám toto SQL:
CREATE TABLE `seznam` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `nazev` LONGTEXT NOT NULL , `typ` LONGTEXT NOT NULL , `pocet_disku` LONGTEXT NOT NULL , `zanr` LONGTEXT NOT NULL , `pujceno` LONGTEXT NOT NULL , `pujceno_komu` LONGTEXT NOT NULL , `hral` LONGTEXT NOT NULL , `hodnoceni` LONGTEXT NOT NULL , `pridano` LONGTEXT NOT NULL , UNIQUE (`nazev` ) ) ENGINE = innodb CHARACTER SET utf8 COLLATE utf8_czech_ci; Ale nechápu tuto chybu: BLOB/TEXT column 'nazev' used in key specification without a key length Jak mohu nastavit délku klíče když potřebuji hodnotu název mít jako LONGTEXT. Prosím o každou radu. Předem díky |
||
bohyn Profil |
#2 · Zasláno: 19. 11. 2008, 15:20:14
na BLOB/TEXT se neda udelat index (unique je taky index). Pouzij VARCHAR, da se natahnout tusim az na nejakejch 60k znaku
|
||
Mastodont Profil |
#3 · Zasláno: 19. 11. 2008, 15:21:29
Název jako LONGTEXT je IMHO kr****a, ale budiž. Manuál říká jasně:
Indexes can be created that use only the leading part of column values, using col_name(length) syntax to specify an index prefix length. ... BLOB and TEXT columns also can be indexed, but a prefix length must be given. http://dev.mysql.com/doc/refman/5.0/en/create-index.html |
||
Časová prodleva: 15 let
|
0