Podczas ładowania pliku MySQL oczekuje, że ma on taką samą liczbę kolumn jak tabela docelowa, chyba że określisz inaczej, nawet jeśli brakująca kolumna ma wartość domyślną. Więc dostarcz listę kolumn do swojego LOAD
oświadczenie i literał 1 dla wartości 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)
Możesz to również zrobić za pomocą SET
klauzula:
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