Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.
Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.
Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.
David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …
Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.
Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.
V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.
Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.
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: