Nejčastější dotazy/Base/143

    From The Document Foundation Wiki
    < Faq‎ | Base
    This page is a translated version of the page Faq/Base/143 and the translation is 100% complete.
    Other languages:


    Jak propojit (připojit) tabulky v textovém formátu v databázi HSQL ?

    Existuje textový soubor (.Txt, .Csv), který chcete propojit s databází LibreOffice (výchozí formátHSQL). Tento soubor lze upravit mimo LibreOffice. Může to být například soubor vygenerovaný aplikací. Nechceme jej importovat do databáze (což by vedlo k nedynamickému výsledku), ale propojit, připojit jej, aby mohl reflektovat změny.

    Principem je vytvoření tabulky v textovém formátu definující strukturu a následné propojení se zdrojovým souborem. Rozhraní neumožňuje provést "graficky" tento typ funkce. Musíme použít nabídku Nástroje ▸ SQL. Kromě toho bude tabulka použita jako další tabulka. Lze ji použít zejména při spojování se standardními HSQL tabulkami.

    V tomto příkladu vytvoříme tabulku s automatickou hodnotou pole ID (INTEGER), textovým polem (VARCHAR) , datovým polem (DATE) a číselným polem (NUMERIC) .

    Odpovídající soubor dat (test.csv) bude:

    1;Produkt jedna;2008-07-01;23.10
    2;Produkt dva;2008-07-02;15.50
    3;Produkt tři;2008-07-03;11
    4;Produkt čtyři;2008-07-04;13.50

    Jak vytvořit tabulku

    • Otevřete databázi HSQL
    • Spusťte Nástroje ▸ SQL
    • Do pole Příkaz k provedení napište následující SQL a klikněte na Provést.

    -- Pouze s nástroji> SQL
    CREATE TEXT TABLE "NomTableLiaison" ("ID" INTEGER GENERATED BY DEFAULT AS IDENTITY, "NomProduit" VARCHAR(50), "DateDebut" Date, "Nombre" NUMERIC)
    SET TABLE "NomTableLiaison" SOURCE "test.csv;fs=\semi"

    Poznámka

    • Soubor "test.csv" je uložen ve stejné složce jako databáze.
    • Seznam tabulek se neaktualizuje automaticky, spusťte příkaz View ▸ Refresh tables (aktivní pouze při zobrazení objektů "Tabulky").

    Pokud chcete při otevření databáze něco změnit, je možné tabulku odpojit od zdrojového souboru pomocí příkazu:

    -- Pouze s nástroji> SQL
    SET TABLE "NomTableLiaison" SOURCE OFF

    Příkazem dojde k opětovnému připojení:

    -- Pouze s nástroji> SQL
    SET TABLE "NomTableLiaison" SOURCE ON