#1 Re: Problémy s MySQL » phpMyAdmin foreign key » 2022-07-16 12:38:22

Ano, to jsou ty indexové klíče, ale reálně nemají žádný efekt. Nevadí, ochranu proti cizímu klíči odkazujícímu na neexistující záznam jsem si implementoval na úrovni PHP, takže bez toho asi přežiju smile

#2 Re: Problémy s MySQL » phpMyAdmin foreign key » 2022-07-15 20:54:57

Ano, vím o tom. V době kdy jsem databázi tvořil jsem to nevěděl a jako primární klíč tabulky `states` použil sloupeček `id` typu char(4). Předělávat se mi to nechtělo a na funkčnosti by to nemělo mít vliv. Nicméně vytvořit cizí klíč se mi nedaří ani pro sloupeček `area_id`, které je klasického typu int:

ALTER TABLE gallery_areas ADD CONSTRAINT FK_ImgAreaID FOREIGN KEY (area_id) REFERENCES areas(id);

Pokus o vložení záznamu s hodnotou `area_id` třeba 9999 (neodpovídající žádnému záznamu v areas) dopadne úspěšně, což by se dít nemělo.

#3 Re: Problémy s MySQL » phpMyAdmin foreign key » 2022-07-14 21:11:19

Zkusil jsem do tabulky `gallery_areas` vložit foreign key následujícím dotazem:

ALTER TABLE gallery_areas ADD CONSTRAINT FK_AreaImgState FOREIGN KEY (state_id) REFERENCES states(id);

Dotaz byl úspěšně proveden. Následně jsem do tabulky vložil nový záznam dotazem:

INSERT INTO `gallery_areas` (`id`, `area_id`, `filename`, `state_id`, `description`) VALUES (NULL, '2', 'IMG_20210318_103646.jpg', 'abcd', NULL);

Dotaz byl opět úspěšně proveden. V tabulce `states` však neexistuje záznam, který by měl `id`='abcd'. Zřejmě to tedy stále nefunguje sad

#4 Re: Problémy s MySQL » phpMyAdmin foreign key » 2022-07-14 18:53:28

Uživatel beny258, databáze urbanclimbingbrno. Práva by navýšena být měla. Teď jsem si však všiml, že mi phpMyAdmin vypisuje panel:

Některé z rozšířených funkcí phpMyAdmina nelze používat. Zjistěte proč.

Přičemž po otevření odkazu "Zjistěte proč" se objeví informace:

Konfigurace pmadb… není v pořádku
Obecné funkce relací Vypnuto

a dodatek:

Create a database named 'phpmyadmin' and setup the phpMyAdmin configuration storage there.

Na vytvoření databáze phpmyadmin však nemám práva, což je mi sděleno při pokusu o vytvoření oné databáze:

You do not have necessary privileges to create a database named 'phpmyadmin'. You may go to 'Operations' tab of any database to set up the phpMyAdmin configuration storage there.

#5 Problémy s MySQL » phpMyAdmin foreign key » 2022-07-13 18:34:54

beny258
Odpovědi: 8

Dobrý den,
nedaří se mi přes phpMyAdmin vytvořit cizí klíč, a to ani přes UI, ani pomocí SQL dotazu. Dle návodu zde https://youtu.be/7HTAX0dfJqg je potřeba v phpMyAdmin otevřít strukturu tabulky a pak nahoře kliknout na Relation view, nic takové tam však nevidím. Když se pokusím přidat cizí klíč přes SQL dotaz, např:

ALTER TABLE Orders ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

tak se pouze vytvoří index klíč, ale reálně to žádný efekt nemá (přidání záznamu s cizím klíčem indexujícím neexistující záznam v druhé tabulce nevyhodí chybu).

Předem děkuji za pomoc.

#6 Re: Problémy s FTP » Github actions » 2022-07-10 16:33:21

Dobrý den,
přidávám se k dotazu, taktéž by se mi to pro můj projekt hodilo ze stejných důvodů.

Děkuji

Zápatí

Založeno na FluxBB | CZ a SK