Autor | Zpráva | ||
---|---|---|---|
Wolfyk Profil * |
#1 · Zasláno: 8. 1. 2013, 14:04:26
Mám jednoduchou MYSQL tabulku : ID (INT), nazev_pisnicky (VARCHAR)
a potřeboval bych vytvořit něco jako složený unikátní index. Příklad: Mám umělce s ID=1 a u něj může být ve sloupečku nazev_pisnicky písnička určitého názvu vložena jenom jednou. Stejný název písně může být ovšem u jakéhokoliv jiného umělce s jiným ID. Vyhovovalo by mne kdyby to šlo ošetřit na úrovni MYSQL -> errno 1064 - > nějaká hláška o duplicitě atd. Pokud se ty unikátní indexy dají dělat zároveň nad více sloupečky, jak to zapsat v PhpMyAdminu? díky. |
||
marcus33cz Profil |
#2 · Zasláno: 8. 1. 2013, 14:17:11
Takže ty chceš unikátní index a zároveň ho nechceš. :D
Indexy nad více sloupečky samozřejmě lze, v PHPAdminu na to je taková kolonka dole pod strukturou každé tabulky. Tam si vybereš "vytvořit index nad více sloupci". Pokud trváš na unikátním indexu, tak ho musíš spojit ještě s něčím, pokud chceš, aby mohlo mít více písniček stejné jméno. Například si můžeš vytvořit pomocnou tabulku artists_songs ve které bude id (autoincrement), id_artist, id_song. Toto bude tvůj unikátní index, který zároveň bude vyjadřovat vazbu HasAndBelongsToMany. Potom budeš mít třeba: artists id name 1 Depeche Mode 2 Linkin Park songs id name 1 Enjoy The Silence artists_songs id id_artist id_song 1 1 1 1 2 1 Jo a doporučuju používat raději anglické názvy a klasickou syntax. |
||
Časová prodleva: 12 let
|
0