Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memuatkan Nilai NULL dengan Betul dari Fail CSV ke dalam Jadual MySQL?

Bagaimana untuk Memuatkan Nilai NULL dengan Betul dari Fail CSV ke dalam Jadual MySQL?

Linda Hamilton
Lepaskan: 2024-12-21 14:42:09
asal
950 orang telah melayarinya

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

MySQL: Memuatkan Nilai NULL daripada Data CSV

Cabaran:

Fail data CSV selalunya mengandungi medan kosong, yang boleh bermasalah apabila memuatkannya ke dalam jadual MySQL yang ditakrifkan dengan lajur NULLABLE. Secara lalai, MySQL memberikan sifar (0) kepada medan kosong, walaupun apabila lalai lajur adalah NULL. Ini boleh menyebabkan kekeliruan apabila cuba membezakan antara nilai NULL dan sifar.

Penyelesaian:

Untuk memastikan medan kosong ditafsirkan sebagai nilai NULL semasa pemuatan data, pertimbangkan menggunakan kaedah berikut:

  1. Gunakan NULLIF() Fungsi:

Ubah suai kenyataan LOAD DATA INFILE untuk membaca medan kosong ke dalam pembolehubah tempatan (@vfour) dan kemudian tetapkan nilai medan sebenar kepada NULL jika pembolehubah tempatan kosong.

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,'')
;
Salin selepas log masuk

Ini memastikan bahawa medan kosong dalam fail CSV ditafsirkan sebagai NULL dalam MySQL jadual.

  1. Baca Semua Pembolehubah ke dalam Pembolehubah Setempat:

Jika semua medan dalam fail CSV mungkin kosong, gunakan berbilang penyata SET untuk tetapkan nilai NULL kepada medan kosong.

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,'')
;
Salin selepas log masuk

Pendekatan ini membenarkan pengendalian kosong secara eksplisit medan dan memastikan bahawa ia ditafsirkan sebagai nilai NULL.

Dengan menggunakan kaedah ini, anda boleh memuatkan nilai NULL daripada data CSV dengan berkesan ke dalam jadual MySQL, menyelesaikan isu salah tafsir medan kosong sebagai nilai sifar.

Atas ialah kandungan terperinci Bagaimana untuk Memuatkan Nilai NULL dengan Betul dari Fail CSV ke dalam Jadual MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan