abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 0
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 21
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 13
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

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

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 14
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 789 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: nastavení cizího klíče

    12.4.2011 16:51 jardík
    nastavení cizího klíče
    Přečteno: 1976×
    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.