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 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

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

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 10
    včera 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    7.5. 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 2
    7.5. 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    7.5. 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    7.5. 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (7%)
     (13%)
     (16%)
    Celkem 142 hlasů
     Komentářů: 10, poslední včera 17:35
    Rozcestník

    Dotaz: dynamicky kurzor

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

    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.