ข้ามไปยังเนื้อหาหลัก

ฐานข้อมูล

ซิงค์เกอร์ฐานข้อมูล

ตารางผู้ใช้ที่เราสร้างเป็นตัวอย่างนำเข้ามาจาก ไฟล์ XLSX แม่แบบ

ตาราง

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

แก้ไข

เคล็ดลับ

โดยทั่วไป คุณต้องกรอกข้อมูลอย่างน้อย ID และ Name ในคอลัมน์ Casdoor ฟิลด์อื่นๆ ที่สำคัญ ได้แก่ createdTime, Password, และ DisplayName

ฟิลด์ต่อไปนี้เป็นสิ่งที่จำเป็น:

  • Organization: องค์กรที่ผู้ใช้จะถูกนำเข้ามา
  • Name: ชื่อซิงค์เกอร์
  • Type: เลือก "ฐานข้อมูล"
  • Host: โฮสต์ฐานข้อมูลต้นฉบับ
  • Port: พอร์ตฐานข้อมูลต้นฉบับ
  • User: ชื่อผู้ใช้ฐานข้อมูลต้นฉบับ
  • Password: รหัสผ่านฐานข้อมูลต้นฉบับ
  • Database type: ฐานข้อมูลที่รองรับโดย Xorm เช่น MySQL, PostgreSQL, SQL Server, Oracle, และ SQLite
  • Database: ชื่อฐานข้อมูลต้นฉบับ
  • Table: ชื่อตารางผู้ใช้ต้นฉบับ
  • คอลัมน์ตาราง
  • Column name: ชื่อคอลัมน์ผู้ใช้ต้นฉบับ
  • Column type: ประเภทคอลัมน์ผู้ใช้ต้นฉบับ
  • Casdoor Column: ชื่อคอลัมน์ผู้ใช้ของ Casdoor

ฟิลด์ที่เลือกได้:

  • Is hashed: ไม่ว่าจะคำนวณค่าแฮชหรือไม่ เมื่อตัวเลือกนี้ถูกเปิดใช้งาน ซิงค์เกอร์จะซิงค์ผู้ใช้เฉพาะเมื่อฟิลด์ของผู้ใช้ในตารางต้นฉบับมีการอัปเดต หากตัวเลือกนี้ไม่ถูกเปิดใช้งาน ซิงค์เกอร์จะยังคงซิงค์ผู้ใช้แม้ว่าจะมีเพียงฟิลด์ที่มีการอัปเดต โดยสรุป ผู้ใช้จะไม่ถูกซิงค์จนกว่าฟิลด์ที่เกี่ยวข้องในการคำนวณแฮช (เปิดใช้งาน "Is hashed") จะได้รับการอัปเดต
  • Is key: ไม่ว่าจะเป็นคีย์หลักของผู้ใช้ในตารางต้นฉบับและผู้ใช้ในตาราง Casdoor เมื่อซิงค์ฐานข้อมูล จะถูกกำหนดตามฟิลด์ที่เลือกตัวเลือก "Is key" อย่างน้อยหนึ่งในปุ่ม "Is key" สำหรับฟิลด์ควรถูกเลือก หากไม่มีการเลือก ตัวเลือก "Is key" แรกจะถูกเลือกโดยค่าเริ่มต้น
  • Avatar base URL: เมื่อซิงค์ผู้ใช้ หาก Avatar base URL ไม่ว่างและ user.avatar ต้นฉบับไม่มีคำนำหน้า "http" รูปภาพใหม่ user.avatar จะถูกแทนที่ด้วย Avatar base URL + user.avatar
  • Affiliation table: ใช้เพื่อซิงค์ความสัมพันธ์ของผู้ใช้จากตารางนี้ในฐานข้อมูล เนื่องจากความสัมพันธ์อาจเป็นรหัสประเภท int ใน "Affiliation table" จึงต้องมีการแมปเป็นสตริง อ้างอิง getAffiliationMap() Casdoor มีฟิลด์ที่ไม่จำเป็นบางส่วนที่สามารถยืมมาใช้ได้ ดังนั้น ที่นี่ เราใช้ score เพื่อแมปรหัส int เป็นชื่อสตริง

เมื่อคุณได้กำหนดค่าซิงค์เกอร์แล้ว เปิดใช้งานตัวเลือก Is enable และบันทึก ซิงค์เกอร์จะเริ่มทำงาน

ผู้ใช้

คุณยังสามารถใช้ปุ่ม "Sync" เพื่อซิงโครไนซ์ฐานข้อมูล

อัปเดต

เมื่อ Table columns ถูกตั้งค่าตามที่แสดงในรูปต่อไปนี้ การดำเนินการอัปเดตจะถูกทำ

table_columns

หากข้อมูลในสองตารางนั้นแตกต่างกันสำหรับคีย์ คุณสามารถซิงโครไนซ์ข้อมูลระหว่างสองตารางโดยอิงจากคีย์หลัก

  • อัปเดตผู้ใช้ในตารางเดิม
  • อัปเดตผู้ใช้ในตาราง Casdoor

เพิ่ม

เมื่อ คอลัมน์ตาราง ถูกตั้งค่าตามที่แสดงในรูปภาพต่อไปนี้ การดำเนินการเพิ่มข้อมูลจะถูกทำ

table_columns

หากจำนวนข้อมูลระหว่างสองตารางไม่เท่ากัน ให้เพิ่มข้อมูลลงในตารางที่มีจำนวนข้อมูลน้อยกว่าโดยอิงจากคีย์หลัก

  • เพิ่มผู้ใช้ในตารางเดิม
  • เพิ่มผู้ใช้ในตาราง Casdoor