Apabila bekerja dengan jadual sedia ada di mana lajur ID ialah medan autokenaikan, mengimport data melalui LOAD DATA INFILE boleh menimbulkan cabaran. Artikel ini menyediakan penyelesaian yang cekap untuk mengendalikan senario sedemikian.
Untuk kejelasan, pertimbangkan struktur jadual berikut:
--------------------- ID | AField | BField| ---------------------
dengan ID ialah medan autokenaikan.
Untuk mencipta fail CSV yang membolehkan pangkalan data mengisi secara automatik medan ID dengan nombor kenaikan automatik, pendekatan yang ideal adalah dengan memasukkan hanya lajur bukan kenaikan automatik dalam CSV. Selepas itu, tetapkan lajur ID secara eksplisit kepada NULL dalam pernyataan LOAD DATA INFILE.
Pendekatan ini memastikan pangkalan data menjana nombor kenaikan automatik untuk medan ID semasa proses import. Sebagai contoh, pertimbangkan CSV berikut:
afieldvalue, bfieldvalue
Penyataan LOAD DATA INFILE akan kelihatan seperti ini:
LOAD DATA INFILE '/tmp/data.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' (AField, BField) SET ID = NULL;
Dengan mengikuti pendekatan ini, anda boleh mengisi ID autokenaikan dengan lancar medan semasa mengimport data melalui LOAD DATA INFILE dalam MySQL.
Atas ialah kandungan terperinci Bagaimana untuk Mengisi Medan Peningkatan Auto dengan LOAD DATA INFILE dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!