Autor Zpráva
Andrej.B
Profil
Zdravim,

mam problem pri Importe CSV (;) subory s datami na produkcii, testovaci na lokale funguje dobre.
Pouzivam Adminer 4.8.1 na spravu DB na obidvoch serveroch

Local: MySQL version: 5.5.5-10.4.22-MariaDB through PHP extension MySQLi
Produkcny: MySQL version: 5.5.5-10.3.29-MariaDB-0ubuntu0.20.10.1 through PHP extension MySQLi

Chyba pri vkladani je:

Incorrect integer value: '' for column `test`.`plan`.`urobene` at row 1

Column `urobene` je INT a hned prvy riadok je prazdny. Pokial rucne napisem cislo, tak funguje do dalsieho prazdneho a vyhodi chybu. Je niekde rozdiel vo verziach databaz, ze mi pri prazdnom vyhodi chybu? Data dostavam v takomto formate, kde mam Columns `mnozstvo` a `urobene`.
priklad

id_riadok_plan;Č. objednávky;Mnozstvo;Urobene

5;THF1003005100;100;
6;THF1003005101;150;50
7;THF1003005102;122;122



a podobne.

Co mam urobit aby sa to dalo importovat korektne aj na produkcnom. /Default value alebo NULL na Column urobene?/

Dakujem
juriad
Profil
Zkontoluj si, jestli není jedna databáze ve striktním módu: dev.mysql.com/doc/refman/5.7/en/constraint-invalid-data.html. Rozdíl je v tom, jak se databáze postaví vůči insertu nevalidních dat:
If you try to store a string that does not start with a number into a numeric column, MySQL Server stores 0.

Podívej se jaký používáš mód:
SELECT @@GLOBAL.sql_mode;

A nastav si druhou databázi stejně:
SET GLOBAL sql_mode = 'modes';
Viz dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sql-mode-setting
Andrej.B
Profil
juriad:

Tak produkcna ma takto:
STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

a Testovacia, ktora je ok, takto:
NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION


Zmenil som Produkcny ako je Testovaci.
Dakujem

PS: snad som moc neohrozil bezpecnost nakoniec :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0