บทความนี้แสดงวิธีแก้ไขข้อผิดพลาด 'บันทึกมีขนาดใหญ่เกินไป' ใน MS Access
คุณอาจเคยเจอปัญหาที่พยายามนำเข้าไฟล์ขนาดเล็กในฐานข้อมูล Access แต่กลับกลายเป็นว่าไฟล์นั้นไม่ได้เล็กอย่างที่คิด ปัญหานี้จะปรากฏขึ้นเมื่อระบบแสดงคำเตือนว่า 'Record มีขนาดใหญ่เกินไป' ข้อผิดพลาด 3047 ซึ่งอาจทำให้คุณประหลาดใจ เพราะขนาดไฟล์อาจเล็กกว่าที่คิดก็ได้ เพื่อแก้ไขปัญหานี้ คุณต้องเข้าใจก่อนว่าเหตุใดจึงเกิดข้อผิดพลาดนี้ ดังนั้น นี่จะเป็นจุดเริ่มต้นที่เราจะมาดูกัน 
สาเหตุเบื้องหลังข้อผิดพลาด
สิ่งที่ผู้ใช้ Access จำนวนมากไม่ทราบคือมีข้อ จำกัด ในบันทึก Access ที่ จำกัด ให้พวกเขาใช้อักขระไม่เกิน 2000 ตัวสำหรับ 'พื้นที่ว่างที่มีอยู่จริง' ซึ่งหมายความว่าผู้ใช้ได้รับ Unicode เพียง 4000 ไบต์ซึ่งเป็นขีด จำกัด ที่แทบจะไม่ยากที่จะเกิน หลายครั้งที่เกินขีด จำกัด นี้เป็นไปโดยไม่ได้ตั้งใจทำให้ผู้ใช้หลงลืมไปพร้อมกับข้อผิดพลาดที่ซับซ้อนอื่น ๆ ที่ต้องจัดการ
ก้าวไปข้างหน้าของสาเหตุที่อยู่เบื้องหลังข้อผิดพลาดนี้ตอนนี้เราจะพยายามทำความเข้าใจแนวทางแก้ไขปัญหาที่เป็นไปได้
การจัดการกับข้อผิดพลาด
การแก้ไขทั่วไปบางประการที่คุณสามารถใช้เมื่อพบเห็นข้อผิดพลาดนี้ได้อธิบายไว้ด้านล่าง
ลองนิยามตารางใหม่ – หนึ่งในวิธีแก้ไขปัญหาที่นิยมใช้มากที่สุดคือการกำหนดโครงสร้างตารางใหม่ทั้งหมด ซึ่งไม่เพียงแต่จะต้องลบฟิลด์เก่าที่ไม่จำเป็นออกเท่านั้น แต่ยังต้องเพิ่มฟิลด์ใหม่เข้าไปอีกด้วย
- ใช้ประโยชน์จากเขตข้อมูล Memo - คุณสามารถลองจัดการกับข้อผิดพลาด 3047 โดยใช้ฟิลด์ประเภทบันทึกไม่ใช่ฟิลด์ประเภทข้อความ คุณสามารถตั้งค่าประเภทฟิลด์เป็นบันทึกได้โดยตั้งค่าคุณสมบัติประเภทฟิลด์เป็น 12 หากคุณมีอยู่ที่ 10 คุณจะได้ฟิลด์ข้อความอีกครั้ง หากคุณข้ามขีด จำกัด ที่กำหนดในกรณีของฟิลด์บันทึกช่วยจำ Visual Basic จะใช้เพจแยกต่างหากสำหรับการใส่ฟิลด์เหล่านี้ในฐานข้อมูล
- ใช้ประโยชน์จากวิธี DoCmd.TransferSpreadSheet - ตาม MS Access รุ่นปี 2016 ขีด จำกัด ของแต่ละตารางถูกกำหนดไว้ที่ 4000 ระเบียนโดยมีขนาดรวม 2 GB ดังนั้นหากคุณสร้างตารางที่ข้ามขีด จำกัด นี้คุณจะต้องจัดการกับข้อผิดพลาดนี้
วิธีแก้ปัญหา
นอกเหนือจากการใช้ การแก้ไขการเข้าถึง เครื่องมือหรือวิธีจัดการกับข้อผิดพลาดที่ระบุไว้ข้างต้นคุณยังสามารถใช้วิธีแก้ปัญหาที่เกี่ยวข้องกับการใช้สเปรดชีต excel และเชื่อมโยงกลับไปที่ตาราง สิ่งนี้จะช่วยให้คุณมีแบบสอบถามที่สามารถจัดเก็บได้มากกว่า 4000 ระเบียนและส่งออกไปยัง excel เมื่อใดก็ตามที่มีความต้องการโดยไม่มีข้อผิดพลาดใด ๆ
อย่างไรก็ตามสิ่งสำคัญที่ควรคำนึงถึงตรงนี้คือเพื่อให้แน่ใจว่าคุณใช้ประโยชน์จาก VBA เมื่อส่งออกข้อความค้นหาจำนวนมาก
บทนำผู้เขียน:
Vivian Stevens เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ SQL Server ซ่อมแซม และผลิตภัณฑ์ซอฟต์แวร์กู้คืน excel ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.
ลองนิยามตารางใหม่ – หนึ่งในวิธีแก้ไขปัญหาที่นิยมใช้มากที่สุดคือการกำหนดโครงสร้างตารางใหม่ทั้งหมด ซึ่งไม่เพียงแต่จะต้องลบฟิลด์เก่าที่ไม่จำเป็นออกเท่านั้น แต่ยังต้องเพิ่มฟิลด์ใหม่เข้าไปอีกด้วย