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.
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.
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.
GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.
Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).
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.
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].
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.
Byla vydána verze 11.0 s kódovým jménem Aramo linuxové distribuce Trisquel GNU/Linux. Založena je na Ubuntu 22.04 LTS a podporována bude do roku 2027. Trisquel patří mezi svobodné distribuce doporučované Nadací pro svobodný software (FSF).
Mozilla založila startup Mozilla.ai a vložila do něj 30 milionů dolarů. Cílem je vývoj důvěryhodné, nezávislé a open source AI.
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.
Tiskni
Sdílej: