Maison > base de données > tutoriel mysql > Comment charger correctement les valeurs NULL des fichiers CSV dans les tables MySQL ?

Comment charger correctement les valeurs NULL des fichiers CSV dans les tables MySQL ?

Linda Hamilton
Libérer: 2024-12-21 14:42:09
original
950 Les gens l'ont consulté

How to Properly Load NULL Values from CSV Files into MySQL Tables?

MySQL : Chargement de valeurs NULL à partir de données CSV

Défi :

Les fichiers de données CSV contiennent souvent des champs vides, qui peuvent être problématique lors de leur chargement dans des tables MySQL définies avec des colonnes NULLABLE. Par défaut, MySQL attribue zéro (0) aux champs vides, même lorsque la colonne par défaut est NULL. Cela peut prêter à confusion lorsque vous tentez de faire la distinction entre les valeurs NULL et zéro.

Solution :

Pour garantir que les champs vides sont interprétés comme des valeurs NULL lors du chargement des données, considérez en utilisant les méthodes suivantes :

  1. Utilisez NULLIF() Fonction :

Modifiez l'instruction LOAD DATA INFILE pour lire les champs vides dans une variable locale (@vfour), puis définissez la valeur réelle du champ sur NULL si la variable locale est vide.

LOAD DATA INFILE '/tmp/testdata.txt'
INTO TABLE moo
FIELDS TERMINATED BY ","
LINES TERMINATED BY "\n"
(one, two, three, @vfour, five)
SET four = NULLIF(@vfour,'')
;
Copier après la connexion

Cela garantit que les champs vides du fichier CSV sont interprétés comme NULL dans MySQL table.

  1. Lire toutes les variables dans les variables locales :

Si tous les champs du fichier CSV peuvent être potentiellement vides, utilisez plusieurs instructions SET pour attribuer des valeurs NULL aux champs vides.

LOAD DATA INFILE '/tmp/testdata.txt'
INTO TABLE moo
FIELDS TERMINATED BY ","
LINES TERMINATED BY "\n"
(@vone, @vtwo, @vthree, @vfour, @vfive)
SET
one = NULLIF(@vone,''),
two = NULLIF(@vtwo,''),
three = NULLIF(@vthree,''),
four = NULLIF(@vfour,'')
;
Copier après la connexion

Cette approche permet une gestion explicite des champs vides et garantit qu'ils sont interprétés comme NULL valeurs.

En utilisant ces méthodes, vous pouvez charger efficacement des valeurs NULL à partir de données CSV dans des tables MySQL, résolvant ainsi le problème de l'interprétation erronée des champs vides comme valeurs nulles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal