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

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

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

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

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

1.ง่าย

ข้อจำกัด CHECK ทำอะไร?

  1. Aนับแถวในตาราง
  2. Bตรวจสอบรหัสผ่านของผู้ใช้
  3. Cปฏิเสธแถวที่ค่าไม่เป็นไปตามเงื่อนไข
  4. Dตรวจสอบว่ามีตารางอยู่หรือไม่ก่อนรันคิวรีบนตารางนั้น
2.ง่าย

คำสั่งใดเพิ่มคอลัมน์ใหม่ให้ตารางที่มีอยู่?

  1. AUPDATE TABLE
  2. BINSERT COLUMN
  3. CALTER TABLE
  4. DCREATE COLUMN
3.ง่าย

คำสั่ง SQL ใดเปลี่ยนค่าในแถวที่มีอยู่แล้ว?

  1. AUPDATE
  2. BMODIFY
  3. CREPLACE COLUMN
  4. DINSERT
4.ปานกลาง

SQL injection คืออะไร?

  1. Aวิธีเพิ่มดัชนี
  2. Bเทคนิคการสำรองฐานข้อมูล
  3. Cเทคนิคแทรกหลายแถวอย่างรวดเร็วด้วยคำสั่ง INSERT เพียงคำสั่งเดียว
  4. Dการโจมตีที่ข้อมูลที่ผู้ใช้ป้อนเปลี่ยนโครงสร้างของคิวรี SQL
5.ปานกลาง

WHERE EXISTS (subquery) เป็นจริงสำหรับแถวเมื่อใด?

  1. Aเมื่อซับคิวรีคืนหนึ่งแถวพอดี
  2. Bเมื่อซับคิวรีไม่คืนค่า NULL
  3. Cเมื่อซับคิวรีคืนอย่างน้อยหนึ่งแถว
  4. Dเมื่อซับคิวรีคืนตัวเลขที่มากกว่าศูนย์
6.ปานกลาง

นิพจน์ตารางร่วม (common table expression, WITH name AS (...)) ให้อะไร?

  1. Aตารางถาวรที่เก็บบนดิสก์จนกว่าจะถูกลบ
  2. Bดัชนีบนคอลัมน์
  3. Cผลลัพธ์ชั่วคราวที่มีชื่อ ใช้ได้ภายในคำสั่งเดียว
  4. Dผู้ใช้ฐานข้อมูลใหม่
7.ยาก

ทรานแซกชัน T1 ล็อกแถว A และรอแถว B ขณะที่ T2 ล็อกแถว B และรอแถว A DBMS ทั่วไปทำอย่างไร?

  1. Aตรวจพบ deadlock และยกเลิกทรานแซกชันหนึ่งเป็นผู้เสียสละ
  2. Bcommit ทั้งสองทรานแซกชันพร้อมกัน
  3. Cปล่อยให้ทั้งสองทรานแซกชันรอจนกว่าหนึ่งในนั้นจะคอมมิตตามปกติ
  4. Dรวมสองทรานแซกชันเป็นหนึ่ง
8.ยาก

ตารางมีหนึ่งล้านแถวและคอลัมน์บูลีน is_active เป็น TRUE ใน 95% ของแถว เหตุใดตัวปรับแต่งอาจเมินดัชนีบน is_active สำหรับ WHERE is_active = TRUE?

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

เฉลย

  1. 1. C · ปฏิเสธแถวที่ค่าไม่เป็นไปตามเงื่อนไข
  2. 2. C · ALTER TABLE
  3. 3. A · UPDATE
  4. 4. D · การโจมตีที่ข้อมูลที่ผู้ใช้ป้อนเปลี่ยนโครงสร้างของคิวรี SQL
  5. 5. C · เมื่อซับคิวรีคืนอย่างน้อยหนึ่งแถว
  6. 6. C · ผลลัพธ์ชั่วคราวที่มีชื่อ ใช้ได้ภายในคำสั่งเดียว
  7. 7. A · ตรวจพบ deadlock และยกเลิกทรานแซกชันหนึ่งเป็นผู้เสียสละ
  8. 8. D · แถวส่วนใหญ่ตรงเงื่อนไข การสแกนทั้งตารางจึงถูกกว่าการค้นด้วยดัชนีจำนวนมาก

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