ความแตกต่างระหว่างลบและลบ

Anonim

ลบหรือวาง

คำสั่ง Delete and Drop ทั้งสองแบบนี้เป็นคำสั่ง SQL (Structured Query Language) และเป็น ใช้ในกรณีที่ลบข้อมูลออกจากฐานข้อมูล ลบคือคำสั่ง DML (Data Manipulation Language) จะลบบางส่วนหรือทั้งหมดข้อมูลจากตารางตามเงื่อนไขที่ผู้ใช้ระบุไว้ คำสั่งลบจะลบเฉพาะระเบียนข้อมูลในตาราง แต่โครงสร้างตารางจะแสดงเหมือนกันในฐานข้อมูล คำสั่ง Drop คือคำสั่ง DDL (Data Definition Language) และทำหน้าที่แตกต่างจากคำสั่ง Delete ไม่ใช่คำสั่งตามเงื่อนไขเพื่อลบข้อมูลทั้งหมดจากตารางนอกจากนี้ยังลบโครงสร้างตารางและการอ้างอิงทั้งหมดไปยังตารางดังกล่าวอย่างถาวรจากฐานข้อมูล

ลบคำชี้แจง

ตามที่ระบุไว้ข้างต้นคำสั่ง Delete จะลบข้อมูลออกจากตารางโดยขึ้นอยู่กับเงื่อนไขที่ให้ไว้และจะใช้เงื่อนไข Where กับ Delete เพื่อระบุเงื่อนไขที่ต้องการนี้ ถ้าไม่ได้ระบุตำแหน่ง Where กับ Delete ข้อมูลตารางทั้งหมดจะถูกลบออกจากตาราง อย่างไรก็ตามในการลบการดำเนินการโครงสร้างตารางที่มีอยู่ยังคงเหมือนเดิม ดังนั้นผู้ใช้ไม่จำเป็นต้องกำหนดโครงสร้างตารางถ้าเขา / เธอต้องการที่จะใช้ตารางอีกครั้ง เนื่องจากลบเป็นคำสั่ง DML จะไม่กระทำการโดยอัตโนมัติหลังจากดำเนินการ ดังนั้นนี้สามารถย้อนกลับเพื่อยกเลิกการทำงานก่อนหน้านี้ มิฉะนั้นคำสั่ง Commit ควรถูกเรียกให้ทำการเปลี่ยนแปลงอย่างถาวร ขณะดำเนินการคำสั่ง Delete จะบันทึกรายการในบันทึกธุรกรรมสำหรับการลบแถวแต่ละครั้ง ดังนั้นนี้มีผลต่อการชะลอการดำเนินการ นอกจากนี้ยังไม่ได้จัดสรรพื้นที่ที่ใช้หลังจากดำเนินการ

ต่อไปนี้เป็นไวยากรณ์สำหรับคำสั่ง Delete

DELETE FROM WHERE

Drop Statement

คำสั่ง Drop จะลบข้อมูลระเบียนทั้งหมดจากฐานข้อมูลโดยไม่ต้องมีเงื่อนไขใด ๆ แต่จะเอาโครงสร้างตาราง, ดัชนีและสิทธิ์การเข้าถึงของตารางที่เกี่ยวข้องจากฐานข้อมูลอย่างถาวร ดังนั้นความสัมพันธ์ทั้งหมดสำหรับตารางอื่น ๆ จะไม่มีอยู่อีกต่อไปและข้อมูลเกี่ยวกับตารางจะถูกลบออกจากพจนานุกรมข้อมูล ดังนั้นถ้าผู้ใช้ต้องการนำมาใช้ตารางเขา / เธอต้องกำหนดโครงสร้างตารางและการอ้างอิงอื่น ๆ ทั้งหมดในตารางอีกครั้ง Drop คือคำสั่ง DDL และหลังจากคำสั่งนั้นไม่สามารถย้อนกลับได้อีกเนื่องจากคำสั่ง Drop ใช้คำสั่งอัตโนมัติ ดังนั้นผู้ใช้ควรระมัดระวังในการใช้คำสั่งนี้ คำสั่ง Drop ไม่สามารถใช้กับตารางระบบและไม่สามารถใช้สำหรับตารางที่มีข้อ จำกัด คีย์ต่างประเทศได้

คำสั่ง Drop สามารถใช้ไม่เพียง แต่สำหรับตาราง SQL แต่ยังสำหรับฐานข้อมูลมุมมองและคอลัมน์ในตารางและข้อมูลทั้งหมดที่เก็บอยู่ในวัตถุเหล่านี้จะหายไปตลอดกาลพร้อมกับวัตถุ

ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับคำสั่ง Drop

DROP TABLE

ความแตกต่างระหว่าง Delete and Drop คืออะไร?

1 คำสั่งลบและวางจะลบข้อมูลตารางออกจากฐานข้อมูล

2 แต่ลบคำสั่งดำเนินการลบตามเงื่อนไขในขณะที่คำสั่ง Drop ลบระเบียนทั้งหมดในตาราง

3 นอกจากนี้คำสั่งลบจะลบเฉพาะแถวในตารางและรักษาโครงสร้างตารางไว้เหมือนกันในขณะที่คำสั่ง Drop จะลบข้อมูลทั้งหมดในตารางและโครงสร้างตารางนอกจากนี้ลบข้อมูลอ้างอิงอื่น ๆ ทั้งหมดจากฐานข้อมูล

4 Delete คือคำสั่ง DML แต่ drop เป็นคำสั่ง DDL ดังนั้นการดำเนินการลบสามารถย้อนกลับได้และจะไม่กระทำโดยอัตโนมัติในขณะที่การดำเนินการปล่อยไม่สามารถย้อนกลับในลักษณะใด ๆ เนื่องจากเป็นคำสั่งโดยอัตโนมัติ

5 ไม่สามารถใช้คำสั่ง drop ในตารางที่ถูกอ้างถึงโดยข้อ จำกัด ของคีย์ต่างประเทศในขณะที่สามารถใช้คำสั่ง Delete แทนได้

6 คำสั่ง Drop ควรใช้อย่างระมัดระวังด้วยความเข้าใจที่ดีเมื่อเทียบกับคำสั่ง Delete ในแอพพลิเคชัน SQL