Pokud databázový server MariaDB nebo MySQL nedovolí vložit nový záznam do tabulky kvůli chybě „Field ‚column_name‘ doesn’t have a default value“ (Error 1364), znamená to, že máte nastavený přísný režim SQL (STRICT_TRANS_TABLES).
MySQL/MariaDB: Jaký je rozdíl mezi INNER JOIN, LEFT JOIN a RIGHT JOIN? Tady je úžasná vizualizace!
Rozdíl mezi jednotlivými typy spojení tabulek je obrovský, protože vám vrátí odlišné záznamy. Nejčastěji se můžete setkat s INNER JOIN a LEFT JOIN, využívané jsou také RIGHT JOIN a OUTER JOIN, ale existují i složitější konstrukce LEFT JOIN EXCLUDING INNER JOIN, RIGHT JOIN EXCLUDING INNER JOIN a OUTER JOIN EXCLUDING INNER JOIN.
Jejich pochopení vám ulehčí následující vizualizace. A když ještě správně nastavíte indexy, databázový server vás bude zbožňovat.
Transakce v MySQL a PHP: Pokud nezavoláte rollback, máte zaděláno na pořádný průšvih
Při práci s transakcemi v MySQL se občas můžeme zamotat do jejich volání. START TRANSACTION považujme za párový příkaz, po kterém by mělo být vždy zavoláno COMMIT nebo ROLLBACK. Jinak máte zaděláno na velký problém.