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 14:11 | Komunita

    Vývojáři open source operačního systému ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, se na síti 𝕏 pochlubili, že ReactOS zvládne počítačovou hru Half-Life.

    Ladislav Hagara | Komentářů: 0
    dnes 10:44 | Nová verze

    Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 1
    dnes 04:44 | Nová verze

    Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.

    Ladislav Hagara | Komentářů: 5
    dnes 03:33 | Nová verze

    Bylo vydáno Eclipse IDE 2026-06 aneb Eclipse 4.40. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý software

    Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Zajímavý článek

    Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | Nová verze

    Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.

    Ladislav Hagara | Komentářů: 13
    včera 11:44 | IT novinky

    Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.

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

    Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 03:33 | Komunita

    Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (15%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1874 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Postgresql a prohledavani vice tabulek

    26.8.2005 02:32 JFK
    Postgresql a prohledavani vice tabulek
    Přečteno: 152×
    Dobry den, jsem uplny zacatecnik. Prosim o radu jakym zpusobem se daji prohledavat sloupce the_geom ve vsechny tabulkach.

    Vytvoril jsem si funkci, ktera vrati pole s nazvy tabulek a potom jednotlive polozky (nazvy tab.) predavam nize uvedene funkci isinside(), nicmene tato funkce mi vraci chybu:

    ERROR: syntax error at or near "$1" at character 132

    Pokud misto $1 napisu primo nazev tabulky, tak fce pracuje korektne. Zkousel jsem vytvaret obdobnou fci i v PLPGSQL, ale mam stejny problem. Nejsis to bude naka uplna blbost, ale opravdu me nenapada kde je chyba.

    Dekuji za radu.

    CREATE OR REPLACE FUNCTION isinside(varchar) RETURNS varchar AS $$ SELECT astext(the_geom) FROM $1 WHERE Transform(the_geom,102065) && GeometryFromText('POLYGON ((-479167.183908046 -1100294.4683908047, -478249.625 -1100355.375, -478203.96875 -1101317.5, -479295.1875 -1101235.375, -479148.7787356322 -1100300.603448276, -479167.183908046 -1100294.4683908047))',102065); $$ LANGUAGE SQL;

    Odpovědi

    28.8.2005 20:52 JFK
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Tak se to jeste pokusim zjednodusit, v podstate mi jde o to, jak mam funkci predat nazev tabulky a na tu se pak dotazovat. Uvadim uplne jednoduchy priklad, ten predchozi byl trochu "zbesily" a chapu, ze si rika vylozene o to, se tim nezabyvat.
    CREATE OR REPLACE FUNCTION pokus(varchar) RETURNS int4 AS '
    DECLARE
    v ALIAS FOR $1;
    BEGIN
    SELECT AsText(the_geom) FROM v;
    RETURNS 0;
    END;
    ' LANGUAGE plpgsql;
    
    SELECT pokus('b'); 
    ERROR:  syntax error at or near "$1" at character 32
    QUERY:  SELECT  Astext(the_geom) FROM  $1
    CONTEXT:  PL/pgSQL function "pokus" line 4 at SQL statement
    LINE 1: SELECT  Astext(the_geom) FROM  $1
                                           ^
    Budu vdecny za jakykoliv podnet. Predem dekuji.
    28.8.2005 20:58 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Uzamknúť, zmazať, skúsiť inde. :-)
    29.8.2005 11:22 JFK
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Dik za tip, ale tam se ta diskuse nezda prilis ziva.... . :-) Pokud nekdo tusi co s tim, tak bych byl rad za jakoukoliv radu.

    Dekuju
    29.8.2005 14:30 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Tá diskusia živá je, ale je tam iba asi týždeň, takže si ešte návštevníci na ňu nezvykli. A administrátori zatiaľ ignorujú výzvy pridať ju viditeľne do menu či dokonca integrovať fórum do hlavnej stránky.
    29.8.2005 19:47 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Tak zkuste Interfórum, aspoň to tam nebude pořád jen o MySQL… :-)
    29.8.2005 16:33 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Přečti si 'Executing dynamic commands' (kap. 37.6.4.) v dokumentaci. Pokud by ses nechtěl obtěžovat (což asi nebudeš), tak:
    CREATE OR REPLACE FUNCTION pokus(varchar) RETURNS integer AS '
            DECLARE
                    v ALIAS FOR $1;
                    x INTEGER;
            BEGIN
                    EXECUTE ''SELECT id INTO x FROM '' || v || '' LIMIT 1'';
            RETURN x;
            END;
    ' LANGUAGE plpgsql;
    
    Pozor! SELECT INTO v PostgreSQL 7.4.8 ještě není implementováno. Lepší by asi bylo použít nějaký cyklus (v tomto případě)... RTFM a take it easy;-)
    Math, as Barbie says, is hard.
    29.8.2005 16:58 Bubak
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Navic takhle dochazi pri kazdem volani znovu k parsingu sql prikazu.
    29.8.2005 17:40 JFK
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Dekuji moc za radu ... . Mam PostgreSQL 8.0.2 a pri volani teto funkce:
    CREATE OR REPLACE FUNCTION mujpokus(varchar) RETURNS varchar AS '
            DECLARE
                    v ALIAS FOR $1;
                    x INTEGER;
            BEGIN
                    EXECUTE ''SELECT AsText(the_geom) INTO x FROM '' || v || '' LIMIT 1'';
            RETURN x;
            END;
    ' LANGUAGE plpgsql;
    mi to hodi tuto hlasku:
    kam038=# SELECT mujpokus('b');
    ERROR:  EXECUTE of SELECT ... INTO is not implemented yet
    CONTEXT:  PL/pgSQL function "mujpokus" line 5 at execute statement
    Tak to vypada ze to neimplementovali ani sem :-(

    Ale dik za radu, zajimalo by me, jestli je mozny nak ziskat vystup z ty funkce spusteny v EXECUTE. Zkousel jsem FOUND bez toho SELECT INTO a nic.

    Sem si myslel, ze to je uplne kravina resitelna bez problemu ale vypada to, ze tenhle jazyk ma pomerne velky omezeni. Nevite v cem by se podobna vec mohla napsat pokud mozno bez vetsich problemu?
    29.8.2005 18:08 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Příklad, který jsem ti tu hodil, stejně dělá něco jiného, než nejspíš chceš. Cyklus FOR ti pomůže - SELECT INTO x id FROM tbl (což uloží id do proměnné) není SQL dotaz;-). Dokumentace je vážně dobré místo, kde začít.
    Math, as Barbie says, is hard.
    29.8.2005 19:29 JFK
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    Mojim cilem je vytvorit funkci, ktera mi vrati seznam tabulek ve kterych jsou nake GIS prvky obsazene v mnou definovanem obdelniku (ziskam kliknutim na mapu-takze ho taky budu muset predavat). For cyklus mam v jine funkci ze ktere volam tuhle. Chci ji predat nazev tabulky a nechat ji provest dotaz. Ona mi jen vrati jestli tam naky prvek je, nebo ne. Ten EXECUTE je to co potrebuju, jen nevim jak zjistit nakou navratovou hodnotu, protoze jak jsem psal, SELECT INTO neni "zatim" implementovan. Je mi jedno kolik tech prvku tam v ty tabulce je nebo jaky to jsou, jen potrebuju vedet jestli tam vubec nakej je. Tohle jede pokud se dotazuju na konkretni tabulku, ale pokud predavam nazev tabulky jako parametr funkce, tak to nefici. S tim EXECUTE to jde, ale zas nejde zjistit navratova hodnota. Respektive nevim jak. V dokumentaci jsem nic ani vzdalene podobnyho nenasel.

    Dekuju za vase rady.
    29.8.2005 19:49 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Postgresql a prohledavani vice tabulek
    viz kap. 37.7.4 (a vubec 37.7.*):
    FOR record_or_row IN EXECUTE text_expression LOOP 
        statements
    END LOOP;
    
    Proto ten FOR...
    Math, as Barbie says, is hard.

    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.