..


ลิงก์ผู้สนับสนุน

การใช้งานและการจัดการตัวตนของคอลัมน์ใน SQL Server

บทความที่เขียนโดย Vincent Gaglio
หน้า 1 จาก 3

เมื่อออกแบบฐานข้อมูลเพื่อสนับสนุนการใช้งานเป็นสิ่งจำเป็นที่จะต้องพิจารณาวิธีการจัดการกับคีย์หลัก มีในเรื่องนี้อย่างน้อยสองโรงเรียนคิด : หนึ่งที่ระบุว่าสิ่งที่ถูกต้องทำคือการใช้สิ่งที่เรียกว่าคีย์ตัวแทน (คือไม่ได้ขึ้นอยู่กับข้อมูลจริง) และอีกคนหนึ่งที่อ้างว่าจะต้องใช้แทนข้อมูลจริงเป็น ค่าคีย์ แล้วมีทางสายกลางซึ่งประกอบด้วยใน'ฐานข้อมูลสำหรับใช้ภายในทั้งสองของการแก้ปัญหาเหล​​่านี้ขึ้นอยู่กับญาติที่ pros และ cons (ซึ่งเราจะเร็ว ๆ นี้) เป็น

เมื่อออกแบบตารางก็มักจะมีมากกว่าหนึ่งคอลัมน์ที่ทำขึ้นคีย์หลักของ ที่เรารู้ว่าคีย์หลักของตารางจะเป็นค่า (หรือการรวมกันของค่า) ที่ไม่ซ้ำกันระบุแถวแต่ละแถว เคยกล่าวไว้ก่อนถ้าคีย์ถูกสร้างขึ้นจากค่าจริงเป็นธรรมชาติเรียกว่าคีย์ แต่ถ้ายกตัวอย่างเช่นที่สำคัญคือการสร้างครั้งที่คุณแทรกแถวในตารางจะถูกเรียกว่าตัวแทนที่สำคัญในทุก คีย์ตัวแทนมักจะเป็นค่าตัวเลขใน SQL Server และมักจะคอลัมน์ของชนิดนี้เป็นของเอกลักษณ์ของที่เพิ่มเติมในภายหลัง

ที่สำคัญธรรมชาติถูกสร้างขึ้นจากข้อมูลจริงคือข้อมูลที่มีความสัมพันธ์กับค่าในคอลัมน์อื่น ๆ ของแถว (เช่นรหัสภาษีของแต่ละคนในตารางลูกค้าที่ยังมีทั่วๆไป​​ของมัน) แม้จะเป็นตัวแทนที่สำคัญไม่ซ้ำกันระบุแถวในตาราง แต่ค่าของมันมีความสัมพันธ์กับค่าอื่น ๆ ของเส้นไม่มีและมันก็เป็นเพียงการสร้างและเก็บไว้

เราจะวิเคราะห์ข้อดีและข้อเสียของทั้งสองประเภทของคีย์เริ่มต้นด้วยตัวแทนของ

PRO

  • คีย์ตัวแทนมีความสัมพันธ์กับสายข้อมูลอื่น ๆ
  • หากคุณจำเป็นต้องทำการเปลี่ยนแปลงไปยังฐานข้อมูลเกี่ยวกับการปรับปรุงของคีย์ธรรมชาติที่สามารถทำได้อย่างง่ายดายโดยไม่สูญเสียความสัมพันธ์ที่สำคัญต่างประเทศที่หากเป็นอย่างหลังจะไม่ได้ขึ้นอยู่กับคีย์ธรรมชาติ แต่เมื่อตัวแทน
  • คีย์ตัวแทนมักจะมีค่าจำนวนเต็มและดังนั้นจึงต้องการเพียงสี่ไบต์ในการจัดเก็บในลักษณะนี้ทำให้ดัชนีประสิทธิภาพโครงสร้างขนาดเล็ก (ซึ่งมีผลบวกของการดำเนินงานเข้าร่วมได้)

ต่อ

  • ถ้าตารางที่เชื่อมโยงในคีย์ต่างประเทศที่มีตัวแทนเป็นค่าเชื่อมโยงไปยังตารางหลักเพื่อให้ได้ค่าที่แท้จริงของการเชื่อมต่อระหว่างตารางต่างๆที่คุณต้องเข้าร่วมการดำเนินงาน
  • ที่สำคัญไม่ได้เป็นตัวแทนที่มีประโยชน์มากเมื่อค้นหาข้อมูลที่เฉพาะเจาะจงเป็นค่าที่มีอยู่ในพวกเขาไม่มีความหมายที่แท้จริง

ในฐานะที่เป็นสำหรับคีย์ตามธรรมชาติ :

PRO

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

ต่อ

  • มันปรับปรุงความซับซ้อนมากขึ้นโดยเฉพาะอย่างยิ่งถ้าความสัมพันธ์กับต่างประเทศที่สำคัญกับตารางอื่น ๆ จะขึ้นอยู่กับพวกเขา
  • ดัชนีถือว่าใหญ่เพราะคีย์เป็นธรรมชาติมักจะต้องไบต์ในการจัดเก็บ
  • จับตามคีย์ธรรมชาติคอมโพสิต (ซึ่งมักจะรวมถึงข้อมูลสตริง) จะช้ากว่าที่ทำกับคีย์ตัวแทน
ในประเภทเดียวกัน ...
E - Learning
MS Access (Advanced) MS Access (Advanced)
เรียนรู้วิธีสร้างและจัดการฐานข้อมูลอย่างรวดเร็วและง่ายดาย เริ่มต้นจาก 29 €
MySQL (Course) MySQL (Course)
การบริหารจัดการฐานข้อมูลโอเพนซอร์ส จาก 39 €
SQL และฐานข้อมูล (หลักสูตร) SQL และฐานข้อมูล (หลักสูตร)
การสร้างและจัดการฐานข้อมูลเชิงสัมพันธ์ จาก 39 €
ลิงก์ผู้สนับสนุน