Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Valor padrão para campos inteiros vazios ao importar dados CSV no MySQL


Os valores vazios estão sendo interpretados como a string vazia (''), não NULL, portanto, o valor padrão não está sendo usado.

Se você deseja controlar explicitamente o tratamento dessas strings vazias, a melhor coisa a fazer é carregá-las em uma variável de usuário e, em seguida, definir a coluna condicionalmente usando a variável de usuário.

Você pode usar isso para definir o valor para o que quiser (NULL, 0, etc.).

Aqui está um exemplo, supondo que você queira defini-lo como 0:
LOAD DATA INFILE '...'
INTO TABLE your_table
FIELDS TERMINATED BY ','
(column_one,..., @contributor_zipcode,..., column_n)
SET contributor_zipcode = IF(@contributor_zipcode='',0,@contributor_zipcode);