abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    včera 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    včera 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    7.5. 17:33 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    7.5. 05:33 | Komunita

    Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.

    Ladislav Hagara | Komentářů: 17
    7.5. 03:55 | Komunita

    sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.

    Ladislav Hagara | Komentářů: 0
    6.5. 22:11 | Nasazení Linuxu

    Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 2
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (2%)
     (1%)
     (1%)
     (3%)
    Celkem 564 hlasů
     Komentářů: 26, poslední včera 09:58
    Rozcestník

    Dotaz: nastavení cizího klíče

    12.4.2011 16:51 jardík
    nastavení cizího klíče
    Přečteno: 2002×
    Hoj, začínám s SQL a není mi jasné, jak v phpMyAdminu klikáním docílit cizí klíč. Našel jsem si návod...

    tabulka lekari, atribut umi (index (blesk), char 60) má odkazovat do tabulky odbornosti (odbornosti_nazev je PK, char 60).
    Váš SQL-dotaz byl úspěšně vykonán ( dotaz trval 0.2215 sekund )
    ALTER TABLE  `lekari` ADD FOREIGN KEY (  `umi` ) REFERENCES  `odbornosti` (  `odbornosti_nazev` ) ;
    (návod zmiňoval, že všechny tabulky mají být innoDB, to jsem taky udělal).

    No a pak návod hovoří, že si relace prohlídnu v Struktura->Zobrazit relace. Viz obrázek – nic tam nevidím.

    Odpovědi

    12.4.2011 17:34 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    Příloha:
    SELECT * FROM `lekari` WHERE `odbornosti`='oční';
    :) …, já tam něco vidím… :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    12.4.2011 17:46 jardík
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    díkes ;-)
    12.4.2011 20:05 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: nastavení cizího klíče

    Není zač :-)

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    12.4.2011 23:38 jardík
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    ještě otázečka na pochopení těch FK:

    mám tabulku "ordinace" odkazující ze sloupce "kde" do tabulky "oddeleni" do sloupce "nazev_oddeleni". sloupce jsou typu char. když přejmenuju jednou oddělení bude to problém? Neměl bych odkazovat spíš na "id_oddeleni" v tabulce "oddeleni"? Udělal bych to hned, ale překaží mi v tom fakt, že když mám naplněnou tabulku "oddeleni" daty a pak jdu plnit tabulku "ordinace", tak při vkládání prvku mi to má ukázat ve sloupci "kde" nazev oddeleni, ale ukazuje mi to takhle "id_oddeleni".

    Chápu to dobře?
    12.4.2011 23:56 jardík
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    kamarád mi řekl, že takhle to je pro něj čitelnější, že to předchozí se blbě chápe:

    mam DB s tabulkama oddeleni a ordinace. ordinace ma sloupec KDE a odkazuje na tabulku oddeleni. a nevim jestli odkazovat na ID nebo na rovnou nazev_oddeleni...

    Děkuji za radu
    13.4.2011 00:16 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    Dneska jsem byl u zubaře a furt chodím na stejné místo, ale už tam mám 3. zubařku při 4. změně (vrátila se ta první :) ). Adresa/místo (oddělení) furt stejné, ale cedulka (název) na dveřích se pokaždé změnila.
    Provázáno to má být přes jednoznačné identifikátory a ve vašem případě by to mělo být přes id.
    phpMyAdmin samozřejmě ukazuje sloupec, kterým je to provázáno - zobrazení v aplikaci si už zařídíte tak, jak potřebujete.

    přejmenuju jednou oddělení bude to problém
    no bude, protože když tam máte definovaný „cizí klíč“, tak Vám to udržuje referenční integritu (hlídá konzistenci) - zkuste si to, co Vám to dovolí :).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    finc avatar 13.4.2011 09:03 finc | skóre: 8 | blog: Finc | Kolín
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    Spíše to vypadá, že by jsi potřeboval trošku více prostudovat návrh databází. Knih a informací na internetu je spousty. Jinak, předpokládám, že se jedná o MySQL. Pokud se jedná o tvorbu cizích klíčů, tak vždy by měla být reference na primární či unikátní klíč, mám pocit, že jinak to ani nelze. Pokud vytvářím cizí klíč, je tento sloupec automaticky i index. Klikání v tom nástroji (osobně ho úplně nesnáším) co používáš asi nebude úplně ideální. Doporučuji se to naučit ručně. Nevím, jestli jsem to správně pochopil, ale ten vztah mezi ordinací a oddělením bych udělal asi takto:
    CREATE TABLE oddeleni (
     id int NOT NULL auto_increment,
     nazev varchar(50) NOT NULL,
     PRIMARY KEY(id)
    )ENGINE=InnoDB;
    
    
    CREATE TABLE ordinace (
     id int NOT NULL auto_increment,
     oddeleni_id int NOT NULL,
     nazev varchar(50) NOT NULL,
     PRIMARY KEY(id),
     CONSTRAINT fk_ordinace_oddeleni_id FOREIGN KEY(oddeleni_id)
       REFERENCES oddeleni(id) ON UPDATE CASCADE ON DELETE RESTRICT
    )
    
    Pokud již máš hotovou tabulku, tak cizí klíč se přidává třeba takto:
    ALTER TABLE ordinace ADD CONSTRAINT fk_ordinace_oddeleni_id FOREIGN KEY(oddeleni_id)
       REFERENCES oddeleni(id) ON UPDATE CASCADE ON DELETE RESTRICT;
    
    Jinak nejlepší je spojovat reference pomocí typu int. Jednak je to nejrychlejší možnost a jednak je problém, že když něco spojuješ pomocí varchar, tak MySQL neřeší definovanou velikost tohoto sloupce, na to bacha. Díky tomu může spojit sloupce s varchar(10) a varchar(20).
    Kdo Vam dal pravo ty lidi urazet? A kdo ti dal pravo cumet z okna, ty kr.vo!
    13.4.2011 09:33 jardík
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    díky moc. já právě nějaký SQL základy mám, ale chtěl jsem se to naučit také v phpMyAdminovi. Díkes
    13.4.2011 09:44 jardík
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    tak pokud udělám v druhé tabulce primary key to ID a pak se na něj z druhé tabulky odkazuji, tak mi phpMyAdmin nabízí tyto hodnoty (pozn.: mám dva záznamy auto incerement, čili záznam s ID 1 a 2)

    http://obrazku.cz/obr676575_png.png
    13.4.2011 11:10 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: nastavení cizího klíče
    Pokud máte vše zkonfigurováno v phpMyAdmin (což jste podle prvního obrázku neměl), tak si zobrazte 1. tabulk (na tu kterou odkazujete) a v „Zobrazit relace“ si v „Zvolte které sloupce zobrazit“ vyberte 'nazev' (třeba 'odbornosti_nazev').
    A pak se podívejte co Vám to zobrazuje při vkládání do druhé tabulky za hodnoty a jak je to setříděné od ½ seznamu nahoru a od ½ dolů - to Vám odpoví na otázku, kterou jste nenapsal… :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.