Share via


ความสัมพันธ์ของตาราง

ความสัมพันธ์ของตารางกำหนดวิธีที่แถวสามารถเชื่อมโยงกันในฐานข้อมูล ในระดับที่ง่ายที่สุด การเพิ่มคอลัมน์การค้นหาไปยังตารางเพื่อสร้างความสัมพันธ์แบบ 1: N (หนึ่งต่อกลุ่ม) ใหม่ระหว่างตารางสองตาราง และช่วยให้คุณสามารถวางคอลัมน์การค้นหาในฟอร์มได้ ด้วยคอลัมน์การค้นหา ผู้ใช้สามารถเชื่อมโยงแถว รอง หลายแถวของตารางนั้นกับแถวของตาราง หลัก แถวเดียว

นอกเหนือจากเพียงการกำหนดวิธีการเชื่อมโยงแถวกับแถวอื่น ความสัมพันธ์ของตารางแบบ 1:N ยังให้ข้อมูลเพื่อตอบคำถามต่อไปนี้:

  • เมื่อฉันลบแถว แถวใดๆ ที่เกี่ยวข้องกับแถวนั้นควรถูกลบด้วยหรือไม่
  • เมื่อฉันมอบหมายแถว ฉันยังต้องมอบหมายแถวทั้งหมดที่เกี่ยวข้องกับแถวนั้นให้กับเจ้าของใหม่หรือไม่
  • ฉันจะสามารถเพิ่มประสิทธิภาพกระบวนการป้อนข้อมูล เมื่อฉันสร้างแถวใหม่ที่เกี่ยวข้องในบริบทของแถวที่มีอยู่ได้อย่างไร
  • ผู้ที่ดูแถวจะสามารถดูแถวเกี่ยวข้องได้อย่างไร

นอกจากนี้ แถวยังสามารถเข้าร่วมในความสัมพันธ์แบบ N:N (กลุ่ม-ต่อ-กลุ่ม) ที่ซึ่งสามารถเชื่อมโยงกับแถวสำหรับตารางทั้งสองในจำนวนเท่าใดก็ได้

ตัดสินใจว่าจะใช้ความสัมพันธ์หรือการเชื่อมต่อของตาราง

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

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

ชนิดของความสัมพันธ์ของตาราง

เมื่อคุณดูที่ตัวสำรวจโซลูชัน คุณอาจคิดว่ามีความสัมพันธ์ของตารางอยู่สามชนิด จริงๆ แล้วมีเพียงสองดังที่แสดงในตารางต่อไปนี้

ชนิดความสัมพันธ์ รายละเอียด
1: n (หนึ่งต่อกลุ่ม) ความสัมพันธ์ของตารางที่ซึ่งหนึ่งแถวของตารางสำหรับ ตารางหลัก สามารถเชื่อมโยงกับแถวของ ตารางที่เกี่ยวข้อง อื่นๆ อีกมากมาย เนื่องจากคอลัมน์การค้นหาบนตารางที่เกี่ยวข้อง

เมื่อดูแถวของตารางหลัก คุณสามารถดูรายการของแถวของตารางที่เกี่ยวข้องซึ่งมีการเชื่อมโยงกันได้

ในพอร์ทัล Power Apps ตารางปัจจุบัน แสดงถึงตารางหลัก
N:N (ความสัมพันธ์แบบกลุ่มต่อกลุ่ม) ความสัมพันธ์ของตารางที่ขึ้นอยู่กับรูปแบบ ความสัมพันธ์ของตาราง พิเศษ บางครั้งเรียกว่าตารางที่ซ้ำกัน เพื่อให้แถวหลายแถวของหนึ่งตารางสามารถสัมพันธ์กับแถวหลาบแถวของตารางอื่น

เมื่อดูแถวของตารางใดในความสัมพันธ์แบบ N:N คุณสามารถดูรายการของแถวใด ๆ ของตารางอื่นที่เกี่ยวข้องได้

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

พฤติกรรมความสัมพันธ์ของตาราง

พฤติกรรมสำหรับตารางที่เกี่ยวข้องมีความสำคัญ เนื่องจากช่วยให้มั่นใจในความสมบูรณ์ของข้อมูล และสามารถทำให้กระบวนการธุรกิจเป็นแบบอัตโมัติสำหรับบริษัทของคุณ

รักษาความสมบูรณ์ของข้อมูล

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

คุณสามารถใช้ลักษณะการทำงานของความสัมพันธ์เพื่อกำหนดสิ่งที่จะเกิดขึ้นกับแถวที่เกี่ยวข้องตามกฎสำหรับธุรกิจของคุณ ข้อมูลเพิ่มเติม: ลักษณะการทำงานเพิ่มความสัมพันธ์ขั้นสูง

ทำให้กระบวนการธุรกิจเป็นแบบอัตโนมัติ

สมมติว่าคุณมีพนักงานขายใหม่และคุณต้องการกำหนดปริมาณของลูกค้าองค์กรที่มีอยู่ ที่ในขณะนี้ได้รับมอบหมายให้กับพนักงานขายคนอื่น แถวของลูกค้าองค์กรแต่ละแถวอาจมีหมายเลขของกิจกรรมงานที่สัมพันธ์กัน คุณสามารถค้นหาลูกค้าองค์กรที่ใช้งานอยู่ที่คุณต้องการมอบหมายอีกครั้งได้อย่างง่ายดาย และมอบหมายให้กับพนักงานขายใหม่ แต่จะเกิดอะไรขึ้นสำหรับกิจกรรมงานใดๆ ที่เชื่อมโยงกับลูกค้าองค์กรนั้น? คุณต้องการเปิดแต่ละงานและตัดสินว่าจะให้งานนั้นถูกมอบหมายให้พนักงานขายใหม่หรือไม่ อาจไม่ คุณสามารถให้ความสัมพันธ์ใช้กฎมาตรฐานบางอย่างแทนคุณโดยอัตโนมัติได้ กฎเหล่านี้ใช้เฉพาะกับแถวของงานที่สัมพันธ์กับลูกค้าองค์กรที่คุณกำลังมอบหมายอีกครั้ง ตัวเลือกของคุณคือ:

  • มอบหมายงานที่ทำอยู่ทั้งหมดใหม่อีกครั้ง
  • มอบหมายงานทั้งหมดใหม่อีกครั้ง
  • ไม่มีการกำหนดงานใหม่
  • มอบหมายงานทั้งหมดอีกครั้งที่ในปัจจุบันมอบหมายให้กับเจ้าของเดิมของลูกค้าองค์กร

ความสัมพันธ์สามารถควบคุมวิธีการดำเนินการที่กระทำบนแถวสำหรับแถวของตารางหลักแบบเรียงซ้อนลงมายังแถวของตารางใดๆ ที่เกี่ยวข้อง

ลักษณะการทำงาน

มีชนิดของพฤติกรรมหลายชนิดที่สามารถนำไปใช้ได้ เมื่อเกิดการกระทำบางอย่าง

ลักษณะการทำงาน รายละเอียด
เรียงซ้อนที่ใช้งานอยู่ ดำเนินการบนแถวของตารางที่เกี่ยวข้องที่ใช้งานอยู่ทั้งหมด
เรียงซ้อนทั้งหมด ดำเนินการบนแถวของตารางที่เกี่ยวข้องทั้งหมด
ไม่เรียงซ้อนเลย ไม่ต้องทำอะไร
เอาการเชื่อมโยงออก เอาค่าการค้นหาสำหรับแถวที่เกี่ยวข้องทั้งหมดออก
จำกัด ป้องกันไม่ให้แถวของตารางหลักถูกลบ เมื่อมีแถวของตารางที่เกี่ยวข้องอยู่
เรียงซ้อนที่ผู้ใช้เป็นเจ้าของ ดำเนินการกับแถวของตารางที่เกี่ยวข้องทั้งหมดที่เป็นเจ้าของโดยผู้ใช้เดียวกันกับแถวของตารางหลัก

แอคชัน

รายการเหล่านี้คือการดำเนินการที่สามารถทำให้เกิดลักษณะการทำงานบางอย่าง:

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

หมายเหตุ

การดำเนินการมอบหมาย ลบ ผสาน และกำหนดตัวหลักใหม่ จะไม่ดำเนินการในสถานการณ์ต่อไปนี้:

  • หากแถวหลักดั้งเดิมและการดำเนินการที่ร้องขอมีค่าเดียวกัน ตัวอย่าง: การพยายามที่จะทริกเกอร์มอบหมายและการเลือกผู้ติดต่อที่เป็นเจ้าของแถวอยู่แล้ว
  • การพยายามที่จะดำเนินการกับแถวหลักที่รันการดำเนินการแบบเรียงซ้อนอยู่แล้ว

หมายเหตุ

เมื่อดำเนินการมอบหมาย เวิร์กโฟลว์หรือกฎธุรกิจใดๆ ที่ใช้งานอยู่ในขณะนี้ในแถวจะถูกปิดใช้งานโดยอัตโนมัติ เมื่อเกิดการมอบหมายใหม่ เจ้าของใหม่ของแถวจะต้องเปิดใช้งานเวิร์กโฟลว์หรือกฎธุรกิจอีกครั้ง หากต้องการใช้งานต่อ

ความสัมพันธ์ของตารางหลัก

คู่ของตารางแต่ละคู่ที่เหมาะสมที่จะมีความสัมพันธ์แบบ 1:N สามารถมีความสัมพันธ์แบบ 1:N ที่หลากหลายได้ระหว่างรายการเหล่านี้ แต่โดยทั่วไปหนึ่งในความสัมพันธ์เหล่านั้นอาจถูกจัดเป็นความสัมพันธ์ของตารางหลัก

ความสัมพันธ์ของตารางหลักคือ ความสัมพันธ์ของตารางแบบ 1:N ใดๆ ที่หนึ่งในตัวเลือกการเรียงซ้อนในคอลัมน์ หลัก ของตารางต่อไปนี้เป็นจริง

การดำเนินการ หลัก ไม่ใช่รายการหลัก
มอบหมาย เรียงซ้อนทั้งหมด
การเรียงซ้อนที่เป็นเจ้าของโดยผู้ใช้
เรียงซ้อนที่ใช้งานอยู่
ไม่เรียงซ้อนเลย
ลบ เรียงซ้อนทั้งหมด RemoveLink
จํากัด
กำหนดตัวหลักใหม่ เรียงซ้อนทั้งหมด
การเรียงซ้อนที่เป็นเจ้าของโดยผู้ใช้
เรียงซ้อนที่ใช้งานอยู่
ไม่เรียงซ้อนเลย
ใช้ร่วมกัน เรียงซ้อนทั้งหมด
การเรียงซ้อนที่เป็นเจ้าของโดยผู้ใช้
เรียงซ้อนที่ใช้งานอยู่
ไม่เรียงซ้อนเลย
ยกเลิกการใช้ร่วมกัน เรียงซ้อนทั้งหมด
การเรียงซ้อนที่เป็นเจ้าของโดยผู้ใช้
เรียงซ้อนที่ใช้งานอยู่
ไม่เรียงซ้อนเลย

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

โดยปกตินี่จะหมายความว่า สำหรับคู่ของตารางแต่ละคู่ มีเฉพาะความสัมพันธ์หลักรายการเดียวเท่านั้น มีบางกรณีที่การค้นหาบนตารางที่เกี่ยวข้อง อาจอนุญาตให้มีความสัมพันธ์กับตารางมากกว่าหนึ่งชนิด

ตัวอย่างเช่น ถ้าตารางมีการค้นหาของลูกค้าที่สามารถอ้างอิงถึงไปยังผู้ติดต่อ หรือตารางของลูกค้าองค์กรได้ อย่างใดอย่างหนึ่ง มีความสัมพันธ์ของตารางแบบ 1:N หลักที่แยกต่างหากสองรายการ

ตารางกิจกรรมใดๆ มีชุดที่คล้ายคลึงกันของความสัมพันธ์ของตารางหลัก สำหรับตารางที่สามารถเชื่อมโยงได้โดยใช้คอลัมน์การค้นหาที่เกี่ยวข้อง

ข้อจำกัดเกี่ยวกับพฤติกรรมที่คุณสามารถตั้งค่า

เนื่องจากความสัมพันธ์หลักมีข้อจำกัดบางประการที่คุณควรจำไว้ เมื่อคุณกำหนดความสัมพันธ์ของตาราง

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

การล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมา

การใช้ลักษณะการทำงานเรียงซ้อนแบบ กำหนดตัวหลักใหม่ และ แชร์ จะมีประโยชน์ เมื่อคุณต้องการให้การเข้าถึงแถวในตารางที่เกี่ยวข้อง แต่อาจมีการเปลี่ยนแปลงในกระบวนการหรือการออกแบบที่ต้องมีการเปลี่ยนแปลงการตั้งค่าลักษณะการทำงานแบบเรียงต่อกันเป็นลำดับ

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

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

วิธีการล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมามีดังนี้:

  1. ระบุและรวบรวมตารางทั้งหมดที่อยู่ในความสัมพันธ์แบบเรียงซ้อนกับรายการหลักที่อัปเดต
  2. ระบุและรวบรวมผู้ใช้ที่ได้รับอนุญาตให้เข้าถึงตารางที่เกี่ยวข้องผ่านการเข้าถึงที่สืบทอดมา
  3. ตรวจสอบผู้ใช้ที่ได้รับการเข้าถึงโดยตรงไปยังตารางที่เกี่ยวข้อง และลบออกจากคอลเลกชัน
  4. ลบการเข้าถึงที่สืบทอดมาสำหรับผู้ใช้ที่รวบรวมบนตารางที่รวบรวม

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

ดูเพิ่มเติม

ตรวจสอบ system job
สร้างและแก้ไขความสัมพันธ์แบบ 1:N (หนึ่งต่อกลุ่ม) หรือแบบ N:1 (กลุ่มต่อหนึ่ง)
สร้างความสัมพันธ์ของตารางแบบกลุ่มต่อกลุ่ม (N:N)

หมายเหตุ

บอกให้เราทราบเกี่ยวกับภาษาที่คุณต้องการในคู่มือ ทำแบบสำรวจสั้นๆ (โปรดทราบว่าแบบสำรวจนี้เป็นภาษาอังกฤษ)

แบบสำรวจนี้ใช้เวลาทำประมาณเจ็ดนาที ไม่มีการเก็บข้อมูลส่วนบุคคล (คำชี้แจงสิทธิ์ส่วนบุคคล)