จะต้องไปสำหรับแฟชั่นเก่าที่ยิ่งใหญ่ "มันขึ้นอยู่กับ"
แน่นอนคุณจะต้องมีคีย์บางอย่างในตารางนี้ คุณสามารถเริ่มต้นด้วย ID ผู้ใช้ นี่อาจเป็น INT ที่เพิ่มขึ้น (หรือยิ่งใหญ่ถ้าคุณจะมีผู้ใช้มากกว่า 2.1 ล้านคน)
ฉันเคยเห็นฐานข้อมูลจำนวนมากยังใช้ GUID เป็น UserID หลัก แต่นั่นเป็นการเปิดเวิร์มต่าง ๆ โดยใช้ GUID สำหรับ PKs
จากนั้นคุณต้องตัดสินใจว่าจะทำให้ฐานข้อมูลของคุณเป็นมาตรฐาน คุณจะอนุญาตให้ผู้ใช้ของคุณมีอีเมลหลายฉบับหรือไม่? หมายเลขโทรศัพท์หลายหมายเลข? ถ้าเป็นเช่นนั้นพวกเขาควรจะอยู่ในตารางที่แตกต่างกัน
ฉันต้องการเก็บตารางผู้ใช้หลักไปที่:
- ID หรือ PK บางประเภทที่คุณสามารถใช้ได้
- ชื่อ / นามสกุลหรือเพียงแค่ชื่อผู้ใช้
- สถานะบางอย่างของผู้ใช้ (ใช้งาน, ปิดใช้งาน, ฯลฯ ) - (เชื่อมโยงไปยังตารางสถานะเล็ก ๆ )
- วันที่สร้าง
นั่นควรเป็นจุดเริ่มต้นของคุณ
จากตรงนั้นคุณสามารถเพิ่มคอลัมน์อื่น ๆ ตามสิ่งที่คุณต้องการจัดเก็บ อีเมลสามารถเชื่อมโยงไปยังตารางอีเมลที่อยู่ไปยังตารางที่อยู่ ฯลฯ รหัสผ่านสามารถใช้แฮช + เกลือ แต่คุณคิดว่าเป็น openids หรือไม่
ฉันขอแนะนำให้คุณอ่านบทความนี้ว่า - http://www.sqlservercentral.com/articles/data-modeling/71725/