sql >> Base de Datos >  >> RDS >> Mysql

Valor predeterminado para campos enteros vacíos al importar datos CSV en MySQL

Los valores vacíos se interpretan como la cadena vacía (''), no NULL, por lo que no se utiliza el valor predeterminado.

Si desea controlar explícitamente el manejo de estas cadenas vacías, lo mejor que puede hacer es cargarlas en una variable de usuario y luego establecer la columna condicionalmente usando la variable de usuario.

Puede usar esto para establecer el valor como desee (NULL, 0, etc.).

Aquí hay un ejemplo, suponiendo que desea establecerlo en 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);