Når en fil indlæses, forventer MySQL, at den har samme antal kolonner som destinationstabellen, medmindre du angiver andet, selvom den manglende kolonne har en standardværdi. Så giv en kolonneliste til din LOAD
sætning og en bogstavelig 1 for værdien af 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)
Du kan også gøre det med en SET
klausul:
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