Portál AbcLinuxu, 9. května 2024 14:23


Dotaz: MariaDB - DATETIME value s nulama - chyba InnoDB

6.1.2014 09:02 Tomasekkk
MariaDB - DATETIME value s nulama - chyba InnoDB
Přečteno: 294×
Odpovědět | Admin
Ahoj,

přes víkend jsem tedy aktualizoval MariaDB a teď mi dělá problém v zápisu do databáze.

Vypisuje mi chybu, že do InnoDB nelze zapsat datetime s value 0000-00-00 00:00:00 ... Já mám spoustu tabulek, kde ty nulové hodnoty jsou zapsané, lze to nějak obejít? Díky Tom

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.1.2014 09:19 Tomasekkk
Rozbalit Rozbalit vše Re: MariaDB - DATETIME value s nulama - chyba InnoDB
Odpovědět | | Sbalit | Link | Blokovat | Admin
Problém vyřešen. Nechal jsem v SQL_mode TRADITIONAL

viz. tento blog
6.1.2014 15:16 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: MariaDB - DATETIME value s nulama - chyba InnoDB

To je blbost, ne?

TRADITIONAL se přece rozvine na: STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, tak jak se píše i v odkazovaném blogu, nebo lépe zde (trochu zmateně se jim tam zatoulalo znovu TRADITIONAL) nebo zde.

Pokud tam bylo: NO_ENGINE_SUBSTITUTION, TRADITIONAL, tak nejmírnější změna je: NO_ENGINE_SUBSTITUTION, STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER.

To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
7.1.2014 18:33 Tomasekkk
Rozbalit Rozbalit vše Re: MariaDB - DATETIME value s nulama - chyba InnoDB
Není to blbost, myslel jsem, že jsem v SQL_mode nechal nastavený TRADITIONAL a ten mi právě způsoboval ten problém, musel jsem ho zrušit.
7.1.2014 21:06 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: MariaDB - DATETIME value s nulama - chyba InnoDB

Oki, vyznělo (mi) to tak, že jsi to nastavil na TRADITIONAL a tím se to vyřešilo.

Kdyby jsi chtěl být přísný a povolit je tu „jednu nestandardnost“, tak tam stačí dát:

NO_ENGINE_SUBSTITUTION, STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER
Stačí vyhodit jen: NO_ZERO_DATE, které je v TRADITIONAL obsaženo.

To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.