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

Carregar valor padrão do arquivo de dados não inserindo na tabela


Ao carregar um arquivo, o MySQL espera que ele tenha o mesmo número de colunas que a tabela de destino, a menos que você especifique o contrário, mesmo que a coluna ausente tenha um valor padrão. Portanto, forneça uma lista de colunas ao seu LOAD instrução e um literal 1 para o valor de STATUS :
LOAD DATA INFILE '/var/www/names.csv' 
INTO TABLE users 
  FIELDS TERMINATED BY ',' 
  ENCLOSED BY '"' 
  LINES TERMINATED BY '\n' 
  IGNORE 1 LINES 
  (`name`, `type`, 1)

Você também pode fazer isso com um SET cláusula:
LOAD DATA INFILE '/var/www/names.csv' 
INTO TABLE users 
  FIELDS TERMINATED BY ',' 
  ENCLOSED BY '"' 
  LINES TERMINATED BY '\n' 
  IGNORE 1 LINES 
  (`name`, `type`)
  SET `status` = 1