Gdy zmienimy np. nazwę migracji to by ustrzec się przed błędami wykonujemy komendę:
$ composer dump-autoload
Gdy zmienimy np. nazwę migracji to by ustrzec się przed błędami wykonujemy komendę:
$ composer dump-autoload
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <KEY>
html
<input type="text" onkeyup="walidacja_liczby(this)" onpaste="walidacja_liczby(this)"/>
script.js
function walidacja_liczby(el, float = false) { if(el.value.length != 0) { let value = el.value; let value_parts = [0]; // zamieńmy wszystkie przecinki na kropki value = value.replace(/\,/g, '.'); // usuńmy wszystkie znaki z wyjątkiem cyfr i kropek value = value.replace(/[^0-9\.]+/g, ''); // sprawdźmy czy ktoś wpisał kropkę let dot = value[value.length - 1] == '.' && float ? '.' : ''; if(value) { // liczba istnieje więc podzielmy ją na części - dla przypadków z wieloma kropkami value_parts = value.match(/[0-9]+/g); // pierwszą liczbę trzeba rzutować na całkowitą by wyeliminować przypadek '023' value_parts[0] = parseInt(value_parts[0]); } if(value_parts.length == 1 || value_parts.length > 1 && !float) { el.value = value_parts[0] + dot; } else { el.value = value_parts[0] + '.' + value_parts[1]; } } }
-- tworzymy nową tabelę CREATE TABLE nowa_tabela (LIKE stara_tabela INCLUDING all); -- usuwamy domyślną wartość dla kolumny z primary key ALTER TABLE nowa_tabela ALTER st_id DROP DEFAULT; -- kopiujemy zawartość starej tabeli do nowej INSERT INTO nowa_tabela SELECT * FROM stara_tabela; -- zmiana nazwy kolumny z primary key ALTER TABLE nowa_tabela RENAME COLUMN st_id TO nt_id; -- tworzymy generator kolejnych liczb - auto increment CREATE SEQUENCE nowa_tabela_nt_id_seq; -- ustawiamy ostatni id w generatorze SELECT setval('nowa_tabela_nt_id_seq', (SELECT max(st_id) FROM stara_tabela), true); -- przypisujemy kolumnie z primary key generator ALTER TABLE nowa_tabela ALTER nt_id SET DEFAULT nextval('nowa_tabela_nt_id_seq'); -- i robimy go właścicielem tego generatora ALTER SEQUENCE nowa_tabela_nt_id_seq OWNED BY nowa_tabela.nt_id;