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í
×

    včera 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 0
    včera 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 1
    24.3. 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    24.3. 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 10
    24.3. 11:11 | Zajímavý projekt

    Byla představena online vzdělávací platforma Ada Computer Science pro učitele, studenty a kohokoli, kdo se zajímá o informatiku. Stojí za ní Raspberry Pi Foundation a Univerzita v Cambridgi.

    Ladislav Hagara | Komentářů: 0
    24.3. 09:11 | Bezpečnostní upozornění

    GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.

    Ladislav Hagara | Komentářů: 0
    24.3. 08:55 | IT novinky

    Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).

    Ladislav Hagara | Komentářů: 0
    23.3. 19:33 | Nová verze

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 2
    23.3. 14:44 | IT novinky

    Připojit neznámý USB flash disk do počítače může být nebezpečné. Dokonce může jít i o život. Někdo rozeslal ekvádorským novinářům USB flash disky, které po připojení do počítače explodují [BBC, Twitter].

    Ladislav Hagara | Komentářů: 2
    23.3. 13:33 | Nová verze

    Byla vydána nová verze 7.4 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.

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 321 hlasů
     Komentářů: 4, poslední 24.3. 06:42
    Rozcestník


    Dotaz: dynamicky kurzor

    18.6.2009 09:17 peter
    dynamicky kurzor
    Přečteno: 341×

    Ahoj, mam takyto problem, mam v tabulke vela stlpcov, ktore vsetky vytiahnem do deklarovaneho kurzora mysql: DECLARE cur1 CURSOR FOR SELECT * FROM table1 WHERE id = NEW.id;

    Nasledne potrebujem vziat tieto hodnoty a prekopirovat ich do tabulky table1_zaloha co je zaloha tabulky table1 okrem id. Problem je vtom, ze tych stlpcov je velmi vela a pride mi nezmyslene, deklarovat premenu pre kazdy stlpec zvlast a potom to z kurzora nakopirovat do tychto premennych a opat insertnut do tabulky table1_zaloha. Nejde to nieak jednoduchsie, bez deklaracie tych premennych?

    Odpovědi

    18.6.2009 10:21 pSipi
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    A preco to preboha robis takto obtiazne cez cursor?

    INSERT INTO zaloha

    SELECT * FROM table1 WHERE id = NEW.id;

    Taktio by ti to nestacilo?

    18.6.2009 11:14 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Ale tych zaznamou tam moze byt viac, id v tomto pripade nie je unikatne.

    18.6.2009 11:27 pSipi
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Co to ma s tym spolocne ci ich je viac alebo nie? Insertne ich tolko kolko ich vyselektujes.

    Ak tam mas v zalohe iny primary index  ako v originale tak tie stlpce budes musit vymenovat asi takto

    Insert Into zaloha (stlpec1,stlpec2,stlpec3)

    Select stlpec1,stlpec2,stlpec3 FROM table1 WHERE id = NEW.id;

    Ale bude to robit v jednom kroku a neporovnatelne rychlejsie ako kurzorom.

    Doporucujem precitat help na Insert

    18.6.2009 11:48 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    No vyhodi mi to chybu Duplicate entry '668' for key 1 lebo v oboch tabulkach su hodnoty table_id ako primarne kluce a snazi sa tam insertnut aj tie, a kedze uz v tabulke existuje, skonci to z chybou. Nejde to nieako vyselektovat bez table_id, aby som nemusel vypisovat vsetky tie stlpce?

    18.6.2009 11:55 pSipi
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Ved si sprav select len na tie co neexistuju v zalohe. Napr:

    SELECT *

    FROM table1

    Left Join zaloha on zaloha.ID = table1.ID

    WHERE id = NEW.id and zaloha.id is Null;

    Neviem ci je syntax spravny lebo ja pisem v MS SQL ale left join hadam zvladnes.

    18.6.2009 12:08 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    v zalohe je presne to co je v originale, aj auto increment, to je vlastne tabulka kde sa odkladaju nezname entity a ked sa stanu zanmimy, tak ich chcem preklopit do originalu, tak ze bude tam plno zaznamou, ktore maju rovnake table_id

    18.6.2009 12:16 pSipi
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    No neviem co to pises za program ale supat zaznamy z tabuky do tabulky s autoincrement ID je docela blby napad.

    Riesit si to mohol jednoduchym status fieldom.  Minimalne v tej zalohe ten autoincrement nepotrebujes.

     

    18.6.2009 12:45 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Potrebujem lebo tam zapisuju zariadenia ktore su nezname. Nejde spravit ten select njeako tak, ze vyberiem vsetko okrem table_id, aby som tam nemusel vsetky tie stlpce vypisovat?

    18.6.2009 13:30 pSipi
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Nie neda a znova to vravim ze to je blby napad a tom kurzore ani nehovorim.

    18.6.2009 14:51 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: dynamicky kurzor
    Nejde spravit ten select njeako tak, ze vyberiem vsetko okrem table_id, aby som tam nemusel vsetky tie stlpce vypisovat?
    Jde, jednoduše použijete libovolný nástroj, který umí podle schématu databáze vytvořit šablonu SQL dotazu (třeba SQuirreL SQL), a ten jeden sloupeček z výsledné šablony umažete.
    18.6.2009 16:35 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Mysslel som nieco sofistikovanejsie.

    18.6.2009 16:40 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: dynamicky kurzor
    Tohle je ale nejsprávnější řešení. Čímkoli jiným si možná teď ušetříte práci, ale zaděláte si na problémy v budoucnosti. Hvězdička v SELECTech je jenom taková pomůcka pro rychlé prototypování nebo ad-hoc dotazy, používat ji normálně v programu nebo v produkčním prostředí není dobrý nápad.
    18.6.2009 17:14 peter
    Rozbalit Rozbalit vše Re: dynamicky kurzor

    Ok, dakujem.

    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.