sql >> Databáze >  >> RDS >> Mysql

Získávání chyby 1366 Nesprávná celočíselná hodnota:'1' při importu souboru

S touto chybou jsem se také setkal. Je třeba poznamenat, že

  • chyba je zjevně absurdní (zdá se, že říká, že „1“, což je celé číslo, je nesprávná celočíselná hodnota) a
  • dochází k tomu úplně v prvním sloupci úplně prvního řádku a pouze tam .

Pokud platí tyto dvě podmínky, pak je s největší pravděpodobností na vině skrytá tříbajtová sekvence, která je cvaknutá na začátku souboru SQL, který se pokoušíte načíst (nazývá se UTF8 Byte-Order Mark ).

V některých případech je sekvence v chybové zprávě escapována a je zřetelně zobrazena, například v toto hlášení o chybě . V ostatních případech je odeslána uživateli jako součást hodnoty:

Incorrect integer value: '###1'  ...

ale terminál "sežere" kusovník a to, co vidíte, je (nyní absurdní) chyba

Incorrect integer value: '1' ...

Chcete-li problém vyřešit, musíte soubor, který chcete importovat, otevřít v nějakém editoru, který dokáže odstranit značku pořadí bajtů (např. Notepad++).




  1. Jak mohu procházet sadu výsledků MySQL více než jednou pomocí funkcí mysql_*?

  2. záloha databáze mysql pomocí mysqldump

  3. vytvořit pole z dotazu mysql php

  4. listagg data do použitelného formátu?