รหัสสมาชิกกับลำดับระบียนไม่ตรงกัน
กระทู้เก่าบอร์ด อ.Yeadram

 940   8
URL.หัวข้อ / URL
รหัสสมาชิกกับลำดับระบียนไม่ตรงกัน

รหัสสมาชิกกับลำดับระบียนไม่ตรงกัน
จะต้องทำอย่างไรให้ ทั้งสองอย่างตรงกัน เช่น
รหัสสมาชิก ที่ 111 แต่ระเบียนที่เลื่อน กลับเป็น 200 เป็นต้น
ควรจะทำอย่างไรให้ระเบียนตรงกับรหัสสมาชิก เพื่อความสะดวกในการค้นหาข้อมูล

และ รหัสสมาชิก ใช้เป็น AutoNumber ซึ่งเมื่อลบระเบียนไป มันจะรันข้าม
ระัเบียนี่ลบไป
เช่น รหัสสมาชิก 100 ถูกลบไป รหัสสมาชิกสุดท้ายที่มีคือ รหัสสมาชิก 99
แต่พอเพิ่มข้อมูลสมาชิก ไปมันจะกำหนดเป็นรหัสสมาชิก 101 แต่ที่ต้องการคือ รหัสสมาชิก100 ซึ่งอยากให้ลำดับต่อกัน
ควรตั้งค่าอย่างไรค่ะ

8 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R15716
ไม่ควรใช้ AutoNumber ครับ
รหัสสมาชิกควรใช้ Text หรือ Number มากกว่า
เวลาเพิ่มข้อมมูล ก็สั่งให้ + 1 ก็จะเรียงกันครับ
2 @R15717
เวลาเพิ่มข้อมมูล ก็สั่งให้ + 1 ก็จะเรียงกันนั้น

ควรทำอย่างไรค่ะ หนูรบกวนขอคำแนะนำหน่อยค่ะ
3 @R15718
มันแล้วแต่โปรแกรมที่เขียน เบื้องต้นก็ประมาณ
กำหนดให้ฟิลด์ที่รัน เท่ากับ Nz(DMax("[ฟิลด์ที่จะรัน]", "ตารางหรือคิวรี่ที่จะรัน")) + 1
4 @R15719
=Nz(DMax("[Member_Id]","Member_Info"))+1

ลองดูแล้ว มันแสดงข้อมูลรหัสสมาชิกคนสุดท้ายเลย ในทุกๆรหัสสมาชชิก
จะต้องทำอย่างไรค่ะ
5 @R15720
ผมไม่รู้ ว่าโปรแกรมคุณเขียนยังงัย เลยบอกไม่ได้ครับ บอกแนวทางให้ หรือ ลอง ค้น คำว่า Dmax อ่านดูก่อนครับ
6 @R15721
คือ เขียนตรงๆในฟอร์มเลยคะ ไม่มีเงื่อนไขอะไร
ปกติหนูใช้ Member_Id มาแสดงรหัสสมาชิกเลย เมื่อต้องการเพิ่มก็ คีย์ข้อมูลเอง

แต่หนูอยากได้แบบ ไม่ต้องมาย้อนกลับไปดูว่ารหัสที่เท่าไหร่ เลยอยากรบกวนช่วยแนะนำหน่อยคะ
7 @R15722
สร้างปุ่มเพิ่มนะครับ

Private Sub ชื่อปุ่ม_Click()
              DoCmd.GoToRecord , , acNewRec
              Me.ชื่อคอนโทล = Nz(DMax("[Member_Id]","Member_Info"))+1
              Exit Sub
End Sub
8 @R15725
จริงๆก็พอมีเทคนิคอยู่ แต่หากไม่ชำนาญการเขียนโค๊ดผมคงไม่กล้าแนะนำนะครับ
เอาวิธีนี้ง่ายสุดครับ คือ ทุกครั้งที่คุณลบเรคคอร์ดเมื่อไร ยำว่าต้องหลังการลบทันที และต้องเป็นเรคคอร์ดล่าสุดหรือสุดท้ายเท่านั้น

ให้ทำการ Compact and Repair Database ในเมนู Database Tools

แล้วเลข AutoNumber จะนับต่อจากเลขล่าสุดเหมือนเดิม แต่วิธีนี้มีข้อเสียตรงที่โปรแกรมมันจะปิดไฟล์ก่อน Compact และเมื่อ Compact เสร็จ มันจะเหมือนกับการที่คุณเรียกไฟล์ใหม่อ่ะครับ แต่เป็นวิธีที่ง่ายสุด และผมก็ใช้บ่อยมาก
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.4045s