ใบงาน ฐานข้อมูลและ SQL พร้อมเฉลย

ใบงาน ฐานข้อมูลและ SQL ฟรีสำหรับพิมพ์: 8 ข้อ ตั้งแต่ระดับง่ายถึงระดับข้อสอบจริง พร้อมเฉลย พิมพ์หรือบันทึกเป็น PDF ได้

ใบงานใหม่ฝึกออนไลน์พร้อมคำใบ้

สำหรับผู้สอน: พิมพ์ ทำสำเนา และใช้ในชั้นเรียนได้ฟรี ใบงานใหม่แต่ละชุดมีค่าตัวเลขใหม่และเฉลยของตัวเอง หากใส่ลิงก์ไปยัง ExamProblems ในหน้ารายวิชาของคุณ เราจะขอบคุณมาก

ชื่อ: ____________________   วันที่: ____________

1.ง่าย

ในแบบจำลองเชิงสัมพันธ์ แถวของตารางเรียกว่าอะไร?

  1. Aสคีมา (schema)
  2. Bทูเพิล (tuple)
  3. Cโดเมน (domain)
  4. Dแอตทริบิวต์ (attribute)
2.ง่าย

คีย์ผู้สมัคร (candidate key) คืออะไร?

  1. Aชุดคอลัมน์ที่ใช้ร่วมกันระหว่างสองตารางเพื่อเชื่อมแถว
  2. Bคอลัมน์ใดก็ตามที่มีค่า NULL
  3. Cคอลัมน์ที่รอเป็นคีย์นอก
  4. Dชุดคอลัมน์ที่เล็กที่สุดที่ระบุแต่ละแถวได้อย่างไม่ซ้ำกัน
3.ง่าย

คีย์ประกอบ (composite key) คืออะไร?

  1. Aคีย์ที่อนุญาตค่าซ้ำ
  2. Bคีย์ที่เก็บในตารางแยกต่างหาก
  3. Cคีย์ที่ฐานข้อมูลสร้างขึ้น
  4. Dคีย์ที่ประกอบด้วยสองคอลัมน์ขึ้นไป
4.ปานกลาง

LEFT JOIN ให้ผลลัพธ์เป็น:

  1. Aทุกแถวจากตารางขวาเท่านั้น
  2. Bทุกแถวจากตารางซ้ายและแถวที่ตรงกันจากตารางขวา โดยเป็น NULL เมื่อไม่มีแถวที่ตรงกัน
  3. Cแถวที่ไม่ตรงกันในทั้งสองตาราง
  4. Dเฉพาะแถวที่ตรงกันจากทั้งสองตาราง
5.ปานกลาง

ในพีชคณิตเชิงสัมพันธ์ ตัวดำเนินการการเลือก (σ) สอดคล้องกับอนุประโยค SQL ใด?

  1. AORDER BY
  2. Bรายการ SELECT
  3. CGROUP BY
  4. DWHERE
6.ปานกลาง

รูปแบบบรรทัดฐานที่หนึ่ง (1NF) กำหนดว่า:

  1. Aแต่ละคอลัมน์มีค่าอะตอมมิกและไม่มีกลุ่มข้อมูลซ้ำ
  2. Bไม่มีคีย์นอก
  3. Cทุกตารางมีเพียงหนึ่งคอลัมน์
  4. Dทุกคอลัมน์ที่ไม่ใช่คีย์ขึ้นกับคีย์ทั้งหมดและไม่ขึ้นกับสิ่งอื่นนอกจากคีย์
7.ยาก

คิวรี FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' ตัดลูกค้าที่ไม่มีคำสั่งซื้อออกโดยไม่คาดคิด เพราะเหตุใด?

  1. Aเงื่อนไข WHERE บน o ปฏิเสธแถวที่เติม NULL ทำให้กลายเป็น inner join
  2. BLEFT JOIN ไม่เก็บแถวที่ไม่ตรงกัน
  3. Cการเชื่อมควรใช้ USING แทน ON
  4. Dstatus เป็นคำสงวน
8.ยาก

ด้วยการควบคุมภาวะพร้อมกันแบบหลายเวอร์ชัน (MVCC) ผู้อ่านหลีกเลี่ยงการบล็อกผู้เขียนได้อย่างไร?

  1. Aผู้อ่านรอจนผู้เขียนทั้งหมด commit เสมอ
  2. Bผู้อ่านอ่านข้อมูลที่ยังไม่ commit โดยตรง
  3. Cผู้อ่านเห็นสแน็ปช็อตที่สอดคล้องของเวอร์ชันแถวที่ commit แล้ว ขณะที่ผู้เขียนสร้างเวอร์ชันใหม่
  4. Dไม่อนุญาตผู้เขียนขณะมีผู้อ่านที่ทำงานอยู่

เฉลย

  1. 1. B · ทูเพิล (tuple)
  2. 2. D · ชุดคอลัมน์ที่เล็กที่สุดที่ระบุแต่ละแถวได้อย่างไม่ซ้ำกัน
  3. 3. D · คีย์ที่ประกอบด้วยสองคอลัมน์ขึ้นไป
  4. 4. B · ทุกแถวจากตารางซ้ายและแถวที่ตรงกันจากตารางขวา โดยเป็น NULL เมื่อไม่มีแถวที่ตรงกัน
  5. 5. D · WHERE
  6. 6. A · แต่ละคอลัมน์มีค่าอะตอมมิกและไม่มีกลุ่มข้อมูลซ้ำ
  7. 7. A · เงื่อนไข WHERE บน o ปฏิเสธแถวที่เติม NULL ทำให้กลายเป็น inner join
  8. 8. C · ผู้อ่านเห็นสแน็ปช็อตที่สอดคล้องของเวอร์ชันแถวที่ commit แล้ว ขณะที่ผู้เขียนสร้างเวอร์ชันใหม่

เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com