คำถามติดแท็ก relational-database

ฐานข้อมูลเชิงสัมพันธ์คือฐานข้อมูลที่ประกอบด้วยตัวแปรสัมพันธ์ (ซึ่งเรียกอีกอย่างว่า * relvars *, * R-tables * หรือ just * tables *) คำนิยามการจัดการและกฎความสมบูรณ์ของฐานข้อมูลเชิงสัมพันธ์จะขึ้นอยู่กับการดำเนินการเชิงสัมพันธ์ที่เทียบเท่าหรือคล้ายกับพีชคณิตเชิงสัมพันธ์และแคลคูลัส หลักการฐานข้อมูลเชิงสัมพันธ์เป็นพื้นฐานของทฤษฎีและแนวปฏิบัติการจัดการข้อมูลที่สำคัญ

9
เหตุใดจึงใช้หลายคอลัมน์เป็นคีย์หลัก (คีย์หลักแบบผสม)
ตัวอย่างนี้จะนำมาจาก w3schools CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) ) ความเข้าใจของฉันคือทั้งสองคอลัมน์ร่วมกัน ( P_IdและLastName) Personsเป็นคีย์หลักสำหรับตาราง ถูกต้องหรือไม่ เหตุใดบางคนจึงต้องการใช้หลายคอลัมน์เป็นคีย์หลักแทนที่จะเป็นคอลัมน์เดียว สามารถใช้คอลัมน์ร่วมกันเป็นคีย์หลักในตารางได้กี่คอลัมน์

9
การใช้งาน Cross Join คืออะไร?
การรวมแบบไขว้จะทำผลิตภัณฑ์คาร์ทีเซียนบนสิ่งที่สองของทั้งสองเซ็ต SELECT * FROM Table1 CROSS JOIN Table2 สถานการณ์ใดที่ทำให้การดำเนินการ SQL ดังกล่าวมีประโยชน์อย่างยิ่ง?

8
วิธีสร้างความสัมพันธ์ใน MySQL
ในชั้นเรียนเราทุกคนกำลัง 'ศึกษา' ฐานข้อมูลและทุกคนใช้ Access เบื่อกับสิ่งนี้ฉันกำลังพยายามทำในสิ่งที่คลาสอื่น ๆ กำลังทำอยู่ แต่ใช้คำสั่ง SQL ดิบกับ MySQL แทนการใช้ Access ฉันจัดการสร้างฐานข้อมูลและตารางแล้ว แต่ตอนนี้ฉันจะสร้างความสัมพันธ์ระหว่างสองตารางได้อย่างไร ถ้าฉันมีสองตารางของฉันแบบนี้: CREATE TABLE accounts( account_id INT NOT NULL AUTO_INCREMENT, customer_id INT( 4 ) NOT NULL , account_type ENUM( 'savings', 'credit' ) NOT NULL, balance FLOAT( 9 ) NOT NULL, PRIMARY KEY ( account_id ) ) …

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

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

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

26
คุณชอบคีย์หลักของคุณอย่างไร? [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ในการอภิปรายที่ค่อนข้างเคลื่อนไหวในทีมของฉันฉันถูกทำให้คิดว่าคนส่วนใหญ่ชอบอะไรเป็นคีย์หลัก เรามีกลุ่มต่อไปนี้ - Int / BigInt ซึ่งการเพิ่มอัตโนมัติเป็นคีย์หลักที่ดีพอ ควรมีอย่างน้อย 3 คอลัมน์ที่ประกอบเป็นคีย์หลัก Id, GUID และตัวระบุแถวที่มนุษย์อ่านได้ทั้งหมดควรได้รับการปฏิบัติที่แตกต่างกัน แนวทางที่ดีที่สุดสำหรับ PK คืออะไร? จะดีมากถ้าคุณสามารถแสดงความคิดเห็นของคุณได้ มีแนวทางที่ดีกว่าข้างต้นหรือไม่? แก้ไข: ใครมีตัวอย่าง / อัลกอริทึมง่ายๆในการสร้างตัวระบุที่มนุษย์อ่านได้สำหรับแถวที่ปรับขนาดได้ดี?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.