วันศุกร์ที่ 6 กรกฎาคม พ.ศ. 2555

Primary key และ Foreign key




        Primary key (คีย์หลัก)   คือ candidate key ที่ถูกเลือก
                  เพื่อใช้บ่งบอกความแตกต่างของแต่ละ tuple

        จากตารางที่ 6.1 คีย์หลัก คือ รหัสนักศึกษา หรือเลขที่บัตรประชาชน อย่างใดอย่างหนึ่ง
        คุณสมบัติของคีย์หลัก
          1. คีย์หลักซ้ำกันไม่ได้
          2. คีย์หลักอาจเป็นแค่หนึ่งแอตทริบิวต์หรือกลุ่มของแอตทริบิวต์ก็ได้
          3. คีย์หลักจะเป็นค่าว่าง (null) ไม่ได้ แต่แอตทริบิวต์อื่นอาจจะปล่อยเว้นว่างไว้ก็ได้ถ้าไม่ทราบค่า
        ตารางที่ 6.1 มีแอตทริบิวต์เดียวที่เป็นคีย์หลัก ซึ่งอาจจะเป็น
        รหัสนักศึกษา 
        เลขที่บัตรประชาชน








          แต่ใน 1 relation จะมี key หลัก ได้เพียง 1 ตัว เพราะฉะนั้นต้องเลือกตัวใดตัวหนึ่ง
      แต่ข้อมูลบางตารางอาจต้องอาศัย Attribute ตั้งแต่ 2 ตัวขึ้นไปมาประกอบกันเป็นคีย์หลัก เพื่อให้เกิดความแตกต่างระหว่าง tuple
       
        Foreign key (คีย์นอก)    คือ attribute ที่ใช้ในการเชื่อมต่อกับ relation อื่นๆ เพื่อแสดงความสัมพันธ์
          คีย์นอก สามารถมีค่าซ้ำกันได้
          คีย์นอก สามารถเป็น null ได้
          คีย์นอก ที่ไม่เป็น null จะเป็นค่าที่ชี้ไปยัง key หลักของ relation ที่สัมพันธ์อยู่










ไม่มีความคิดเห็น:

แสดงความคิดเห็น