“A contagem de colunas não corresponde à contagem de valores na linha”, mas não
Eu tenho um arquivo mysql com mais de 14000 declarações. Todos eles são inseridos em uma tabela e, quando eu importo o arquivo usando o console, ele gera o seguinte erro:
ERROR 1136 (21S01) at line 1548: Column count doesn't match value count at row 45
Eu sei que o erro aparece quando as linhas especificadas nos nomes das colunas são diferentes das linhas especificadas na lista VALUES, mas eu verifiquei várias vezes e o número de colunas é exatamente o mesmo em ambas as listas.
A linha na posição 45 é:
('00553', 'AAA', 'BBB', 'CCC', 'XXXXXXXXR', 'user address', 'spain', 'spain', '39212', '1900-01-21', '123456789', 'M', 'No disponible', 0, 'AAA', 'BBB ', 'CCC', 'XXXXXXXXR', NULL, '888993344', '', '', '', '', 'no', 'no') --> 26 columns
e a linha de inserção associada a ela, muitas linhas acima são:
INSERT INTO `users` (`id_patient`, `name`, `surname1`, `surname2`, `dni`, `address`, `city`, `state`, `postal_code`, `birthday`, `telephone`, `sex`, `email`, `lopd_status`, `lopd_name`, `lopd_surname1`, `lopd_surname2`, `lopd_dni`, `lopd_as`, `mobile_phone`, `notes`, `job`, `company`, `place`, `active_citation`, `signature`) --> 26 columns
Eu olhei para este erro, mas parece que só aparece quando a contagem é diferente, mas neste caso, é o mesmo.
Qualquer ideia?
EDIT: esqueci de mencionar: se eu jogar a instrução sql diretamente no phpmyadmin, ele adiciona a linha corretamente sem erros. Ele só falha quando executado a partir da linha de comando, embora as instruções acima estejam corretamente inseridas no banco de dados e sejam quase iguais a esta.
EDIT2: eu removi todas as linhas até o 46 e quando eu lanço o arquivo os erros é o seguinte:
ERROR 1136 (21S01) at line 1503: Column count doesn't match value count at row 45
Apenas altera a linha, mas essa linha é a instrução INSERT, que é exatamente igual às outras instruções INSERT no resto do arquivo. A linha previos também está correta.