← กลับไปหน้าบล็อก

นำเข้า CSV และ Excel เข้าฐานข้อมูล: 5 ข้อที่ต้องเช็ก

ไฟล์ CSV และ Excel คือวิธีที่ทุกทีมแลกเปลี่ยนข้อมูล เช่น ราคาจากซัพพลายเออร์ ไฟล์ส่งออกจากพาร์ตเนอร์ หรือรายชื่อที่ใครสักคนเคลียร์ด้วยมือ การโหลดเข้าฐานข้อมูลดูเหมือนงานห้านาที จึงพลาดบ่อย การนำเข้าที่ผิดสร้างข้อมูลเสียที่หายากและแก้ยากกว่า ใช้รายการนี้ตรวจก่อนกดนำเข้า

1. Encoding

ข้อความภาษาไทยต้องบันทึกเป็น UTF-8 ถ้า CSV ส่งออกจากเครื่องมือรุ่นเก่าที่ใช้ encoding เดิม ตัวอักษรจะกลายเป็นเครื่องหมายคำถามหรือตัวมั่วหลังนำเข้า และกู้คืนจากฐานข้อมูลไม่ได้ ต้องนำเข้าใหม่ เปิดไฟล์ด้วยโปรแกรมแก้ข้อความก่อนและดูแถวภาษาไทยสองสามแถว ตัวเลือก "CSV UTF-8" ของ Excel ปลอดภัยที่สุด

2. วันที่

ตกลงรูปแบบวันที่เดียวก่อนเริ่ม 03/04/2026 เป็นวันที่ 3 เมษายนในบางประเทศ และวันที่ 4 มีนาคมในบางประเทศ ถ้าต้นทางเป็นข้อมูลไทย ให้ตรวจว่าเป็นปี พ.ศ. (2569) หรือ ค.ศ. (2026) คอลัมน์ที่ปนกันพบบ่อยหลังมีการแก้ไขด้วยมือ รูปแบบ ISO (2026-04-03) ลดความสับสนได้เกือบทั้งหมด

3. ชนิดข้อมูลและเลขศูนย์นำหน้า

สเปรดชีตชอบแปลงทุกอย่างเป็นตัวเลข รหัสไปรษณีย์ 01000 กลายเป็น 1000 เบอร์โทรเสียเลขศูนย์นำหน้า รหัสยาว ๆ กลายเป็นเลขวิทยาศาสตร์ (1.23E+15) ตั้งคอลัมน์เหล่านี้เป็นข้อความก่อนบันทึก และจับคู่กับคอลัมน์ข้อความในฐานข้อมูล

4. คีย์ซ้ำและคีย์ว่าง

ก่อนนำเข้าตารางที่มี primary key หรือ unique index ให้ตรวจว่าไฟล์มีคีย์ซ้ำหรือแถวที่คีย์ว่างหรือไม่ และตัดสินใจว่าเมื่อคีย์มีอยู่แล้วในตารางจะทำอย่างไร ข้าม แทนที่ หรือหยุด การนำเข้าโดยไม่มีแผนสำหรับคีย์ชนกันคือสาเหตุที่ข้อมูลเดิมถูกไฟล์เก่าทับ

-- หลังนำเข้าตาราง staging ให้หาคีย์ซ้ำ
SELECT sku, COUNT(*) AS n
FROM   import_products
GROUP  BY sku
HAVING COUNT(*) > 1;

5. นำเข้าตารางใหม่ก่อนเสมอ

โหลดไฟล์ลงตารางพักแยกต่างหาก ตรวจ แล้วค่อยเพิ่มหรือรวมเข้าตารางจริง ทำให้มีที่รันการตรวจข้างต้น และย้อนกลับได้ง่าย ๆ ด้วยการลบตารางพัก ใช้เวลาเพิ่มหนึ่งนาที แต่ป้องกันปัญหาการนำเข้าได้เกือบทั้งหมด

ตรวจหลังนำเข้า

  • จำนวนแถวในตารางเท่ากับในไฟล์ (ไม่นับหัวตาราง)
  • ผลรวมของคอลัมน์ตัวเลขตรงกันระหว่างไฟล์กับตาราง
  • สุ่มห้าแถวแล้วเหมือนต้นฉบับ รวมถึงข้อความไทยและวันที่
  • จำนวนค่าว่างต่อคอลัมน์เป็นไปตามที่คาด

ใน Ruamhub

Ruamhub นำเข้าไฟล์ CSV และ Excel เป็นตาราง พร้อมตัวอย่างให้ดูก่อนยืนยัน เพื่อจับปัญหา encoding และคอลัมน์ได้ตั้งแต่ต้น การนำเข้าถูกบันทึกใน audit log พร้อมผู้ที่รัน

เริ่มรวมข้อมูลทุกฐานไว้ในที่เดียว

เริ่มฟรีได้เลย หรือนัดเดโมให้เราพาดูการใช้งานกับข้อมูลของทีมคุณ