ความสัมพันธ์ของตาราง
ความสัมพันธ์ของตารางกำหนดวิธีที่แถวสามารถเชื่อมโยงกันในฐานข้อมูล ในระดับที่ง่ายที่สุด การเพิ่มคอลัมน์การค้นหาไปยังตารางเพื่อสร้างความสัมพันธ์แบบ 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 หลักที่แยกต่างหากสองรายการ
ตารางกิจกรรมใดๆ มีชุดที่คล้ายคลึงกันของความสัมพันธ์ของตารางหลัก สำหรับตารางที่สามารถเชื่อมโยงได้โดยใช้คอลัมน์การค้นหาที่เกี่ยวข้อง
ข้อจำกัดเกี่ยวกับพฤติกรรมที่คุณสามารถตั้งค่า
เนื่องจากความสัมพันธ์หลักมีข้อจำกัดบางประการที่คุณควรจำไว้ เมื่อคุณกำหนดความสัมพันธ์ของตาราง
- ตารางแบบกำหนดเองไม่สามารถเป็นตารางหลักในความสัมพันธ์กับตารางของระบบที่เกี่ยวข้องซึ่งเรียงซ้อนกัน นี่หมายความว่า คุณไม่สามารถมีความสัมพันธ์กับการดำเนินการใดๆ ที่ตั้งค่าเป็น เรียงซ้อนทั้งหมด เรียงซ้อนที่ใช้งานอยู่ หรือ เรียงซ้อนที่ผู้ใช้เป็นเจ้าของ ระหว่างตารางแบบกำหนดเองหลักและตารางของระบบที่เกี่ยวข้อง
- ไม่มีความสัมพันธ์ใหม่ใดที่สามารถตั้งค่าการดำเนินการใดๆ เป็น เรียงซ้อนทั้งหมด เรียงซ้อนที่ใช้งานอยู่ หรือ เรียงซ้อนที่ผู้ใช้เป็นเจ้าของ ถ้ามีตารางที่เกี่ยวข้องในความสัมพันธ์นั้นอยู่แล้วโดยเป็นตารางที่เกี่ยวข้องในความสัมพันธ์อื่นที่มีการตั้งค่าการดำเนินการใดๆ เป็น เรียงซ้อนทั้งหมด เรียงซ้อนที่ใช้งานอยู่ หรือ เรียงซ้อนที่ผู้ใช้เป็นเจ้าของ ทั้งนี้เพื่อหลีกเลี่ยงความสัมพันธ์ที่สร้างความสัมพันธ์แบบมีตัวหลักหลายตัว
การล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมา
การใช้ลักษณะการทำงานเรียงซ้อนแบบ กำหนดตัวหลักใหม่ และ แชร์ จะมีประโยชน์ เมื่อคุณต้องการให้การเข้าถึงแถวในตารางที่เกี่ยวข้อง แต่อาจมีการเปลี่ยนแปลงในกระบวนการหรือการออกแบบที่ต้องมีการเปลี่ยนแปลงการตั้งค่าลักษณะการทำงานแบบเรียงต่อกันเป็นลำดับ
เมื่อความสัมพันธ์ของตารางใช้แบบ กำหนดตัวหลักใหม่ หรือ แชร์ และลักษณะการทำงานเรียงซ้อนถูกเปลี่ยนเป็น ไม่มีการเรียงซ้อน ความสัมพันธ์ของตารางจะป้องกันการเปลี่ยนแปลงสิทธิ์ใหม่ใดๆ จากการเรียงซ้อนเป็นตารางรองที่เกี่ยวข้อง นอกจากนี้ ต้องมีการเพิกถอนสิทธิ์ที่สืบทอดซึ่งได้รับในขณะที่ลักษณะการทำงานแบบเรียงต่อกันเป็นลำดับทำงานอยู่
การล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมาเป็นงานระบบที่ล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมาซึ่งยังคงอยู่หลังจากลักษณะการทำงานแบบเรียงซ้อนเปลี่ยนเป็น ไม่มีการเรียงซ้อน การล้างข้อมูลนี้จะไม่มีผลกับผู้ใช้ใดๆ ที่ได้รับสิทธิ์เข้าถึงตารางโดยตรง แต่จะลบการเข้าถึงจากทุกคนที่ได้รับการเข้าถึงผ่านการสืบทอดเท่านั้น
วิธีการล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมามีดังนี้:
- ระบุและรวบรวมตารางทั้งหมดที่อยู่ในความสัมพันธ์แบบเรียงซ้อนกับรายการหลักที่อัปเดต
- ระบุและรวบรวมผู้ใช้ที่ได้รับอนุญาตให้เข้าถึงตารางที่เกี่ยวข้องผ่านการเข้าถึงที่สืบทอดมา
- ตรวจสอบผู้ใช้ที่ได้รับการเข้าถึงโดยตรงไปยังตารางที่เกี่ยวข้อง และลบออกจากคอลเลกชัน
- ลบการเข้าถึงที่สืบทอดมาสำหรับผู้ใช้ที่รวบรวมบนตารางที่รวบรวม
หลังจากการล้างข้อมูลทำงาน ผู้ใช้ที่สามารถเข้าถึงตารางที่เกี่ยวข้องได้เนื่องจากคุณลักษณะการเรียงซ้อนเท่านั้นจะไม่สามารถเข้าถึงแถวได้อีกต่อไป ซึ่งทำให้มั่นใจได้ว่าจะมีความปลอดภัยมากขึ้น มีหลายกรณีที่การล้างข้อมูลอาจไม่สำเร็จ เรียนรู้เพิ่มเติมเกี่ยวกับวิธีการล้างข้อมูลสิทธิ์การเข้าถึงที่สืบทอดมา
ดูเพิ่มเติม
ตรวจสอบ system job
สร้างและแก้ไขความสัมพันธ์แบบ 1:N (หนึ่งต่อกลุ่ม) หรือแบบ N:1 (กลุ่มต่อหนึ่ง)
สร้างความสัมพันธ์ของตารางแบบกลุ่มต่อกลุ่ม (N:N)
หมายเหตุ
บอกให้เราทราบเกี่ยวกับภาษาที่คุณต้องการในคู่มือ ทำแบบสำรวจสั้นๆ (โปรดทราบว่าแบบสำรวจนี้เป็นภาษาอังกฤษ)
แบบสำรวจนี้ใช้เวลาทำประมาณเจ็ดนาที ไม่มีการเก็บข้อมูลส่วนบุคคล (คำชี้แจงสิทธิ์ส่วนบุคคล)