logologo
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
logologo
ภาพรวม

แหล่งข้อมูล

การจัดการแหล่งข้อมูล
แหล่งข้อมูลหลัก

แหล่งข้อมูลภายนอก (ฐานข้อมูล)

บทนำ
MySQL ภายนอก
MariaDB ภายนอก
PostgreSQL ภายนอก
MSSQL ภายนอก
Oracle ภายนอก
เปรียบเทียบฐานข้อมูลหลักและภายนอก
แหล่งข้อมูล REST API
แหล่งข้อมูล KingbaseES

ตารางข้อมูล

ภาพรวม
ตารางทั่วไป
ตารางสืบทอด
ตารางไฟล์
ตารางแบบต้นไม้
ตารางปฏิทิน
ตารางความคิดเห็น
ตารางนิพจน์
ตาราง SQL
วิวฐานข้อมูล

ฟิลด์ตารางข้อมูล

ภาพรวม
การตรวจสอบฟิลด์

ประเภทพื้นฐาน

ข้อความบรรทัดเดียว
ข้อความหลายบรรทัด
หมายเลขโทรศัพท์
อีเมล
URL
จำนวนเต็ม
ตัวเลข
เปอร์เซ็นต์
รหัสผ่าน
สี
ไอคอน

ประเภทการเลือก

บูลีน
ดรอปดาวน์ (เลือกเดี่ยว)
ดรอปดาวน์ (เลือกหลายรายการ)
ปุ่มตัวเลือก
ช่องทำเครื่องหมาย

มัลติมีเดีย

Markdown
Markdown(Vditor)
Rich Text
ไฟล์แนบ (ความสัมพันธ์)
ไฟล์แนบ (URL)

วันที่และเวลา

ภาพรวม
วันที่และเวลา (มีโซนเวลา)
วันที่และเวลา (ไม่มีโซนเวลา)
Unix Timestamp
วันที่ (ไม่มีเวลา)
เวลา

รูปทรงเรขาคณิต

จุด
เส้น
วงกลม
รูปหลายเหลี่ยม

ประเภทขั้นสูง

UUID
Nano ID
การเรียงลำดับ
สูตรคำนวณ
รหัสอัตโนมัติ
JSON
ตัวเลือกตารางข้อมูล
การเข้ารหัส

ข้อมูลระบบ

วันที่สร้าง
วันที่แก้ไขล่าสุด
สร้างโดย
แก้ไขล่าสุดโดย
เนมสเปซ
Table OID

ประเภทความสัมพันธ์

ภาพรวม
หนึ่งต่อหนึ่ง
หนึ่งต่อหลาย
หลายต่อหนึ่ง
หลายต่อหลาย
หลายต่อหลาย (อาร์เรย์)

การพัฒนา

ภาพรวม
Next Pageภาพรวม
TIP

เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ

#หนึ่งต่อหนึ่ง

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

คีย์นอก (Foreign Key) ในความสัมพันธ์แบบหนึ่งต่อหนึ่งสามารถวางไว้ได้ทั้งในคอลเลกชันต้นทาง (Source collection) หรือคอลเลกชันปลายทาง (Target collection) ครับ/ค่ะ หากคีย์นอกนั้นแสดงถึงความสัมพันธ์แบบ "มีหนึ่งรายการ" (has one) การวางคีย์นอกไว้ในคอลเลกชันปลายทางจะเหมาะสมกว่า แต่ถ้าแสดงถึงความสัมพันธ์แบบ "เป็นของ" (belongs to) การวางคีย์นอกไว้ในคอลเลกชันต้นทางจะเหมาะสมกว่าครับ/ค่ะ

ตัวอย่างเช่น จากกรณีที่กล่าวมาข้างต้นที่พนักงานมีข้อมูลส่วนตัวเพียงหนึ่งรายการ และข้อมูลส่วนตัวนั้นเป็นของพนักงาน การวางคีย์นอกไว้ในคอลเลกชันข้อมูลส่วนตัวจึงเหมาะสมครับ/ค่ะ

#หนึ่งต่อหนึ่ง (มีหนึ่งรายการ)

หมายถึง พนักงานคนหนึ่งมีบันทึกข้อมูลส่วนตัวหนึ่งรายการครับ/ค่ะ

ER Relationship

alt text

Field Configuration

alt text

#หนึ่งต่อหนึ่ง (เป็นของ)

หมายถึง ข้อมูลส่วนตัวหนึ่งรายการเป็นของพนักงานคนใดคนหนึ่งครับ/ค่ะ

ER Relationship

Field Configuration

alt text

#คำอธิบายพารามิเตอร์

#Source collection

คอลเลกชันต้นทาง ซึ่งเป็นคอลเลกชันที่ฟิลด์ปัจจุบันตั้งอยู่ครับ/ค่ะ

#Target collection

คอลเลกชันปลายทาง ซึ่งเป็นคอลเลกชันที่จะเชื่อมโยงด้วยครับ/ค่ะ

#Foreign key

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

#Source key <- Foreign key (คีย์นอกอยู่ในคอลเลกชันปลายทาง)

ฟิลด์ที่ถูกอ้างอิงโดยข้อจำกัดคีย์นอก (Foreign Key Constraint) ต้องมีค่าที่ไม่ซ้ำกันครับ/ค่ะ เมื่อคีย์นอกถูกวางไว้ในคอลเลกชันปลายทาง จะหมายถึงความสัมพันธ์แบบ "มีหนึ่งรายการ" ครับ/ค่ะ

#Target key <- Foreign key (คีย์นอกอยู่ในคอลเลกชันต้นทาง)

ฟิลด์ที่ถูกอ้างอิงโดยข้อจำกัดคีย์นอก (Foreign Key Constraint) ต้องมีค่าที่ไม่ซ้ำกันครับ/ค่ะ เมื่อคีย์นอกถูกวางไว้ในคอลเลกชันต้นทาง จะหมายถึงความสัมพันธ์แบบ "เป็นของ" ครับ/ค่ะ

#ON DELETE

ON DELETE หมายถึง กฎการดำเนินการสำหรับการอ้างอิงคีย์นอกในคอลเลกชันลูกที่เกี่ยวข้อง เมื่อมีการลบเรคคอร์ดออกจากคอลเลกชันแม่ครับ/ค่ะ ซึ่งเป็นตัวเลือกที่ใช้กำหนดเมื่อสร้างข้อจำกัดคีย์นอก (Foreign Key Constraint) ตัวเลือก ON DELETE ที่พบบ่อยได้แก่:

  • CASCADE: เมื่อลบเรคคอร์ดในคอลเลกชันแม่ ระบบจะลบเรคคอร์ดที่เกี่ยวข้องทั้งหมดในคอลเลกชันลูกโดยอัตโนมัติครับ/ค่ะ
  • SET NULL: เมื่อลบเรคคอร์ดในคอลเลกชันแม่ ระบบจะตั้งค่าคีย์นอกที่เกี่ยวข้องในคอลเลกชันลูกเป็น NULL ครับ/ค่ะ
  • RESTRICT: ตัวเลือกเริ่มต้น เมื่อพยายามลบเรคคอร์ดในคอลเลกชันแม่ หากมีเรคคอร์ดที่เกี่ยวข้องในคอลเลกชันลูก ระบบจะปฏิเสธการลบเรคคอร์ดในคอลเลกชันแม่ครับ/ค่ะ
  • NO ACTION: คล้ายกับ RESTRICT หากมีเรคคอร์ดที่เกี่ยวข้องในคอลเลกชันลูก ระบบจะปฏิเสธการลบเรคคอร์ดในคอลเลกชันแม่ครับ/ค่ะ