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 05:55 | Komunita

Prezident Nadace pro svobodný software (FSF) Richard M. Stallman vyhlásil na slavnostním ceremoniálu v rámci konference LibrePlanet 2017 vítěze Free Software Awards za rok 2016. Ocenění za společenský přínos získal SecureDrop (Wikipedie). Za rozvoj svobodného softwaru byl oceněn Alexandre Oliva (Wikipedie).

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

Byla vydána verze 0.7.0 debugovacího nástroje cgdb. Mezi novinky patří například zvýrazňování syntaxe jazyka Rust. Podrobnosti v poznámkách o vydání.

Neel | Komentářů: 0
25.3. 22:00 | Komunita

Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil (podcast) detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 64 tisíc vývojářů. Jejich nejmilovanější platformou je linuxový desktop. Ten je také druhou nejpoužívanější platformou vývojářů.

Ladislav Hagara | Komentářů: 4
24.3. 11:55 | Komunita

Vývojový tým OpenSSL ve spolupráci s iniciativou Core Infrastructure konsorcia Linux Foundation spustil proces přelicencování této kryptografické knihovny ze současné licence na licenci Apache Licence v 2.0 (ASLv2). Nová licence usnadní začleňování OpenSSL do dalších svobodných a open source projektů. Všichni dosavadní vývojáři OpenSSL (Authors) obdrží v následujících dnech email s prosbou o souhlas se změnou licence.

Ladislav Hagara | Komentářů: 24
24.3. 01:11 | Komunita

Před třemi týdny Mozilla.cz představila projekt Photon, jehož cílem je návrh a implementace nového vzhledu Firefoxu. Včera zveřejnila první náhled vzhledu Photon. Práce na projektu Photon jsou rozděleny do pěti týmů, které celkem čítají 19 lidí. Zaměřují se na zlepšení prvního spuštění Firefoxu a zaujetí nových uživatelů, celkovou úpravu vzhledu, zlepšení animací, zrychlení odezvy uživatelského rozhraní a také upravení nabídek. Vývoj lze sledovat v Bugzille.

Ladislav Hagara | Komentářů: 44
23.3. 20:00 | Komunita

OneDrive pro firmy je již ve webových prohlížečích na Linuxu stejně rychlý jako na Windows. Microsoft opravil chybu z listopadu loňského roku. OneDrive pro firmy běžel na Linuxu mnohem pomaleji než na Windows. V popisu chyby bylo uvedeno, že stačilo v prohlížeči na Linuxu nastavit v user-agentu Windows a vše se zrychlilo. Odpovědí Microsoftu bylo (Internet Archive: Wayback Machine), že Linux není podporován. Po bouřlivých diskusích na redditu i Hacker News byla chyba nalezena a opravena.

Ladislav Hagara | Komentářů: 6
23.3. 19:00 | Zajímavý projekt

Byla vyhlášena soutěž Hackaday Prize 2017. Soutěž je určena vývojářům open source hardwaru. Pro výherce je připraveno celkově 250 tisíc dolarů. Každý ze 120 finalistů získá tisíc dolarů. Nejlepší pak navíc 50, 30, 20, 15, 10 a 5 tisíc dolarů. Jedná se již o čtvrtý ročník soutěže. V roce 2014 zvítězil projekt globální sítě open source pozemních satelitních stanic SatNOGS. V roce 2015 zvítězil open source systém pro řízení elektrických invalidních vozíků pohybem očí Eyedriveomatic. V roce 2016 zvítězil modulární robot Dtto.

Ladislav Hagara | Komentářů: 0
23.3. 15:00 | Bezpečnostní upozornění

Byla vydána Samba ve verzích 4.6.1, 4.5.7 a 4.4.12. Řešen je bezpečnostní problém CVE-2017-2619. Pomocí symbolických odkazů a souběhu (symlink race) lze "teoreticky" získat přístup k souborům, které nejsou sdíleny. Linuxové distribuce jsou postupně aktualizovány (Debian).

Ladislav Hagara | Komentářů: 0
23.3. 07:43 | Nová verze

Na Steamu se objevil port hry Arma: Cold War Assault (Operation Flashpoint) pro Mac a Linux. … více »

creon | Komentářů: 30
23.3. 05:55 | Nová verze

Po 18 měsících od vydání verze 8.0 byla vydána verze 9.0 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab. Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (14%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 941 hlasů
 Komentářů: 72, poslední 1.3. 11:16
    Rozcestník

    Dotaz: SQL - import csv, rozparsovani a vložení do tabulky

    24.6.2016 12:38 MrMrkev
    SQL - import csv, rozparsovani a vložení do tabulky
    Přečteno: 592×
    Příloha:
    Dobrý den všem, mám problém s vyřešením jednoho prac. úkolu. Díky tomu, že se v tom nepohybuji a je to jen jednorázový úkol, který je potřeba v brzkém čase vyřešit, tak se obracím na Vás. Jedná se o toto: 1.: Vytvořit web. službu (proceduru), která dovolí nahrát soubor ve formátu .csv. („připravené“) 2.: Dále vytvořit další (navazující) proceduru, která po nahrání daného .csv, toto csv rozparsuje (vždy stejná struktura) a vloží do připravené tabulky na serveru. Věřím, že se pro se bude jednat o banalitu. Bohužel se teprve rozkoukávám a rychlé splácání je nutné. Předem Vám děkuji za případnou pomoc, plavu v tom a potřebuji pracovat na jiných věcech. Jedná se mi hlavně o to rozparsování.

    1.: viz. příloha...

    2.: Zde jsem ztracen a nevím, jak tuto proceduru uchopit... Našel jsem si např. toto: https://slobaray.com/2014/05/28/loading-csv-files-into-oracle-tables-using-plsql/ , ale o moc moudřejší nejsem.

    Struktura .csv, vždy bude: ID (varchar2 – díky číselné řadě a písmennému označení); DatumPočátku (date – zde by měla být i kontrola na validnost data); DatumKonce (date) – data prozatím null * možná se ani vyplňovat nebudou; DatumVložení (date – aktuální datum); Poznámka (varchar2). Vše odděleno „;“

    Ještě jednou děkuji za případnou pomoc.

    Odpovědi

    mika-talvinen avatar 24.6.2016 13:05 mika-talvinen | skóre: 23 | Plzeň
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    A co python? To by stačil csv reader, na datum modul time nebo datetime, a na DB asi cx_Oracle (s Oracle zkušenosti nemám, ale vypadá to použitelně). Celý skript by se pak mohl vejít do sta řádků.
    24.6.2016 13:35 Kit | skóre: 37 | Brno
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    Tak moc? V PHP je to tak na 10 řádek, v Pythonu by se do toho měl vejít také.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    mika-talvinen avatar 24.6.2016 14:15 mika-talvinen | skóre: 23 | Plzeň
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    Tak tazatel psal ještě o kontrole dat, k tomu nějaké ošetření, co vlastně přečte ze souboru, nějaká try-except konstrukce při připojování k db a ono to nad 10 řádků naroste. Ale jinak souhlas, že ten úplný základ by kolem těch 10 mohl být.
    24.6.2016 14:38 Kit | skóre: 37 | Brno
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    Aha, to bude tím. Jsem zvyklý na to, že si databáze data zvaliduje sama. V Oracle to možná bude jiné.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    24.6.2016 13:36 MrMrkev
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    Děkuji, zkusím se na to mrknout.
    25.6.2016 07:28 jekub
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky
    Doporucil bych vasi pozornosti external tables (http://docs.oracle.com/cd/B19306_01/server.102/b14215/et_concepts.htm). Pouzivam v praxi k pristupu dokonce i k binarnim datum.
    1.7.2016 01:23 Tomáš
    Rozbalit Rozbalit vše Re: SQL - import csv, rozparsovani a vložení do tabulky

    Oracle dodává nástroj sqlcl. Ten umí nahrávat CSV. Příklad zde. Program sqlcl je napsán v Javě, tak by jej možná šlo přímo použít ve WS.

    Parsovat CSV v PL/SQL bude IMHO hodně zbytečné práce.

    Osobně tyto věci kóduji v Ruby. Vypadalo by to asi takto:

    #!/bin/ruby
    require 'oci8'
    require 'csv'
    con=OCI8.new('user','password','DB')
    cmd=con.parse("insert into MyTable values ( :jedna, :dva, :tri, :ctyri, :pet )" )
    CSV.foreach('file.csv') { |r| cmd.exec(*r) }
    

    Pokud budte plnit něco jiného než stringy,tak je nutné udělat explicitní bind:

    cmd.bind_param(:jedna, r[0], String )
    m=r[1].match /(?<den>\d\d).(?<mesic>\d\d).(?<rok>\d\d\d\d)/
    cmd.bind_param(:dva, OraDate(m[:rok],m[:mesic],m[:den]), OraDate )
    

    nebo udělat přetypování v prepared statementu

    cmd=con.parse("insert into MyTable values ( :jedna, to_date(:dva,'DD.MM.YYYY'), :tri, :ctyri, :pet )" )
    

    Vše nakódováno po paměti bez testování,tak tam budou chybky.

    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.