xom`s pinion - Tom Hnatovsky Blog
Barevné schéma notifikací
Různé projekty na různých platformách mají jedno společné - notifikace akcí, které by měly být v barvách, které je člověk zvyklý vnímat kolem sebe. Lidé si již vžili, že zelená znamená dobré zprávy, červená ty zlé, žlutá či oranžová upozorňuje a modrá informuje.
Obrázek v tomto článku obsahuje notifikace v barvách, které jednotně používám na mých projektech. Toto barevné schéma se mi osvědčilo:
| Pozadí | #e9f9e5 | |
|---|---|---|
| Rámeček | #b4e8aa | |
| Písmo | #318f14 |
| Pozadí | #f9f9e5 | |
|---|---|---|
| Rámeček | #e8e3aa | |
| Písmo | #d9ad12 |
| Pozadí | #e5ecf9 | |
|---|---|---|
| Rámeček | #aac6e8 | |
| Písmo | #00499c |
| Pozadí | #f9e5e6 | |
|---|---|---|
| Rámeček | #e8aaad | |
| Písmo | #d23e17 |
Aktualizace všech sekvencí v PostgreSQL
Máte v PostgeSQL poslední hodnoty sekvencí, které vám nesedí s daty v tabulkách? Podobnou situaci můžete lehce navodit importním skriptem, který obsahuje hodnoty v polích, která by se měla automaticky plnit dle sekvence..
Jak z takové šlamastiky ven?
SELECT setval('tabulka_sloupec_seq', (SELECT MAX(sloupec) FROM tabulka)+1);
No jo, ale co když je těch tabulek mnoho? V tomto případě oceníte přítomnost plpgsql na serveru a vytvoříte si následující funkci:
CREATE OR REPLACE FUNCTION reset_sequence(table_name text, column_name text, sequence_name text)
RETURNS void AS
$BODY$DECLARE
BEGIN
EXECUTE 'SELECT setval( ''' || sequence_name || ''', ' || '(SELECT MAX(' || column_name || ') FROM ' || table_name || ')' || '+1)';
END;$BODY$
LANGUAGE 'plpgsql';
Funkci poté jednoduše spustíte nad všemi tabulkami pomocí příkazu:
select reset_sequence(table_name, column_name, table_name || '_' || column_name || '_seq') from information_schema.columns where column_default like 'nextval%';