sql >> Database >  >> RDS >> Mysql

Standaardwaarde voor lege integervelden bij het importeren van CSV-gegevens in MySQL

De lege waarden worden geïnterpreteerd als de lege tekenreeks (''), niet NULL, dus de standaardwaarde wordt niet gebruikt.

Als u de verwerking van deze lege tekenreeksen expliciet wilt regelen, kunt u ze het beste in een gebruikersvariabele laden en vervolgens de kolom voorwaardelijk instellen met behulp van de gebruikersvariabele.

Je zou dit kunnen gebruiken om de waarde in te stellen op wat je maar wilt (NULL, 0, etc.).

Hier is een voorbeeld, ervan uitgaande dat u het op 0 wilt zetten:

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);


  1. Omgaan met tijden en na middernacht

  2. Controleer kolom/sleutel bestaat?

  3. Maakt MySQL Workbench automatisch indexen voor externe sleutels?

  4. SQLite JSON_VALID()