V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.
Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.
Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.
Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.
Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.
Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.
Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.
V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.
Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.
character_set_client - znaková sada, ve které jsou data poslána klientemcharacter_set_connection - znaková sada, do které jsou poslaná data od klienta překonvertovánacharacter_set_results - znaková sada, ve které jsou výsledná data zaslána klientovishow variables like '%character%';
Pro nastavení výše uvedených proměnných existují "zkratky":
set names x; je ekvivalentní (nezmiňuji nastavení collation):
set character_set_client = x;
set character_set_results = x;
set character_set_connection = x;
set character set x; je ekvivalentní (nezmiňuji nastavení collation):
set character_set_client = x;
set character_set_results = x;
set character_set_connection = @@character_set_database
--default-character-set=x u mysql klienta a mysqldump odpovídá vykonání: set names x;
[mysqld] v my.cnfcreate database x character set y;create table x ... character set y;... columnx varchar(255) character set y ... _latin1'abc' - tzv. introducershow create table table_name; a pro databázi takto: show create database database_name; .
c_s_client do c_s_connection (nekonvertovány řetězce s introducerem)c_s_connection do znakové sady úložištěc_s_connection - chyba při konverzi c_s_client/c_s_connection. Příklad ukazuje možné úskalí při použití set character set a špatně nastavené znakové sady pro databázi.
create database c_s_test character set latin1;
use c_s_test;
create table t1 (data varchar(255)) character set utf8;
/* znaková sada pro tabulku je utf8 */
set character set utf8;
/* c_s_connection je stále nastavené na latin1 */
insert into t1 values('příliš žluťoučký kůň');
select convert(data using utf8) = _utf8'příliš žluťoučký kůň' from t1 limit 1;
/* chyba - nerovnají se*/
drop database c_s_test;
c_s_client - chyba při konverzi c_s_client/c_s_connection. Data pošleme serveru ve špatném kódování.
create database c_s_test character set utf8;
use c_s_test;
create table t1 (data varchar(255)) character set utf8;
set names utf8;
set character_set_client = latin1;
/* c_s_client je nastaveno na latin1 */
insert into t1 values('příliš žluťoučký kůň');
select convert(data using utf8) = _utf8'příliš žluťoučký kůň' from t1 limit 1;
/* chyba - nerovnají se*/
drop database c_s_test;
c_s_connection/znaková sada úložiště. Když máme nastavenou špatnou znakovou sadu pro tabulku, tak to taky není ono.
create database c_s_test character set utf8;
use c_s_test;
create table t1 (data varchar(255)) character set latin1;
/* znaková sada pro tabulku je latin1 */
set names utf8;
insert into t1 values('příliš žluťoučký kůň');
select convert(data using utf8) = _utf8'příliš žluťoučký kůň' from t1 limit 1;
/* chyba - nerovnají se*/
drop database c_s_test;
c_s_results. Porovnání řetězců tentokrát vrátí 1 - data jsou uložena a zpracována bez chyb při konverzi. Schválně je nastavena jiná znaková sada pro character_set_connection. Dochází ke konverzi utf8 -> latin2 -> utf8. Pro tabulku můžete případně zvolit latin2 znakovou sadu a výsledek bude též správný. Výsledkem druhého selectu je ovšem špatná diakritika kvůli špatně nastavené proměnné c_s_results.
create database c_s_test character set utf8;
use c_s_test;
create table t1 (data varchar(255)) character set utf8;
set names utf8;
set character_set_connection = latin2;
set character_set_results = latin1;
insert into t1 values('příliš žluťoučký kůň');
select convert(data using utf8) = _utf8'příliš žluťoučký kůň' from t1 limit 1;
/* OK vrátí 1*/
select convert(data using utf8) from t1 limit 1;
/* výsledkem je špatná diakritika */
drop database c_s_test;
Dokument vytvořil: razor, 21.2.2007 21:14 | Poslední úprava: DaBler, 30.10.2012 20:19 | Další přispěvatelé: razor | Historie změn | Zobrazeno: 3857×
Tiskni
Sdílej: