⊗pyPmDOLT 122 of 129 menu

การเชื่อมโยงตารางในฐานข้อมูลด้วย Python

สมมติว่าเรามีตารางเก็บชื่อผู้ใช้ และเมืองที่พวกเขาอาศัยอยู่:

users
id name city
1 user1 city1
2 user2 city1
3 user3 city2
4 user4 city1
5 user5 city3
6 user6 city2

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

ประการแรก การทำซ้ำซ้ำๆ นำไปสู่ การที่ฐานข้อมูลเริ่มกินพื้นที่ มากขึ้นมาก

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

และตอนนี้ลองนึกภาพว่าในฐานข้อมูลมีผู้ใช้ 10000 คน จาก 10 เมือง - เพื่อให้ได้เมือง 10 เมืองนี้ เราจะต้องดึงข้อมูลทั้ง ตารางที่มีจำนวนแถวมากมายมหาศาล - ผลลัพธ์คือการดำเนินการที่ช้ามากและ สิ้นเปลืองทรัพยากรอย่างไร้ความหมาย

การแก้ปัญหา

จำเป็นต้องแบ่งตารางของเราออกเป็นสองตาราง: ตารางหนึ่ง จะเก็บเมือง และตารางที่สอง - ผู้ใช้ ในขณะที่ในตารางผู้ใช้จะมีคอลัมน์ city_id ซึ่งจะ อ้างอิง ไปยังเมืองของผู้ใช้

เอาล่ะ เรามาสร้างสองตารางกัน ตาราง เมือง:

cities
id name
1 city1
2 city2
3 city3

ตารางผู้ใช้:

users
id name city_id
1 user1 1
2 user2 1
3 user3 2
4 user4 1
5 user5 3
6 user6 2

งานปฏิบัติ

สมมติว่าคุณต้องการเก็บข้อมูลสินค้า (ชื่อ, ราคา, จำนวน) และหมวดหมู่ของสินค้าเหล่านี้ อธิบายโครงสร้างการจัดเก็บ

สมมติว่าคุณต้องการเก็บข้อมูลแม่น้ำและทะเล ที่แม่น้ำเหล่านี้ไหลลงไป อธิบายโครงสร้าง การจัดเก็บ

สมมติว่าคุณต้องการเก็บข้อมูลเมืองและประเทศ ที่เมืองเหล่านั้นตั้งอยู่ อธิบายโครงสร้าง การจัดเก็บ

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ