การลบข้อมูลภายในตารางทั้งหมด โดยโครงสร้างตารางยังคงอยู่ SQL Truncate table (แอสคิวแอล ทรันเครท เทเบิ้ล)

SQL Knowledge ทั้ง sql มาตรฐาน หลักการออกแบบฐานข้อมูล ความสัมพันธ์ของ ตาราง Mysql , PGSQL, Oracle, MSSQL

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
pprn
PHP Super Hero Member
PHP Super Hero Member
Posts: 565
Joined: 02/07/2018 10:45 am

การลบข้อมูลภายในตารางทั้งหมด โดยโครงสร้างตารางยังคงอยู่ SQL Truncate table (แอสคิวแอล ทรันเครท เทเบิ้ล)

Postby pprn » 03/07/2018 11:51 am


    คำสั่ง SQL Truncate table
    เป็นการลบหรือ reset ข้อมูลภายในตารางข้อมูล (table) ทั้งหมด ทำให้ข้อมูลภายในตารางไม่มีอยู่เลย ซึ่งทำให้
โครงสร้างตารางข้อมูล (table) เหมือน ก่อนเริ่มใส่ข้อมูล ทำให้สามารถ insert ข้อมูลใหม่ได้ จะทำการ reset auto_increment ให้เริ่มนับใหม่ด้วย คำสั่ง

SQL Truncate table จะแตกต่างจาก SQL Drop table ซึ่งจะทำการลบข้อมูลภายใน ตารางข้อมูล (table) ทั้งหมด รวมถึงโครงสร้างของตารางข้อมูล (table)

ด้วย การใช้งานใหม่จำเป็นต้องสร้างตารางข้อมูล (create table) ใหม่อีกครั้ง


    คำสั่ง SQL Truncate table จะทำหน้าที่เหมือนกับคำสั่ง DELETE โดยไม่ใช้คำสั่ง WHERE และเร็วกว่าการใช้คำสั่ง DELETE


    คำเตือน : หลังจากการทำ Truncate table แล้ว ไม่สามารถเรียกข้อมูลภายใน table กลับมาใหม่ได้ (roll back)


รูปแบบการเขียน

คำสั่ง Truncate table ตามด้วยชื่อตารางข้อมูล (table) ที่ต้องการลบ

Code: Select all

TRUNCATE TABLE  table_name;



ตัวอย่าง

ตารางชื่อ PRODUCTS

table.JPG
ข้อมูลภายในตาราง PRODUCTS
table.JPG (25.81 KiB) Viewed 1622 times


โค้ด คำสั่ง TRUNCATE TABLE PRODUCTS

Code: Select all

TRUNCATE TABLE  PRODUCTS ;



ผลลัพธ์
table 1.JPG
ผลลัพธ์ที่ได้จากการ Truncate table ตาราง PRODUCTS
table 1.JPG (14.42 KiB) Viewed 1612 times


ผลลัพธ์ที่ได้ จะพบว่าข้อมูลบรรทัดเป็น 0

Code: Select all

SQL> SELECT * FROM PRODUCTS;
Empty set (0.00 sec)



_____________________________________________________________________________________________
Auto Increment (auto_increment) เป็นตัวเลขที่จะสามารถเพิ่มค่าขึ้นโดยอัตโนมัติในทุกครั้งที่มีการ Insert ข้อมูล
_____________________________________________________________________________________________



----------------------------------------------------------------------------------------------------------------------------------------------------------------
_____________________________________________________________________________________________
บทความนี้เเป็นบทความที่จัดทำขึ้นเพื่อเนะนำเครื่องมือช่วยสำหรับนักพัฒนา SQL ซึ่งเป็นความรู้พื้นฐานในการพัฒนา phpMyadmin ต่อไป เเละขอเเนะนำความรู้ที่เกี่ยวข้องกับโดยสามารถศึกษาได้จากบทเรียน SQL ได้ที่นี่ เพื่อเพิ่มความเข้าใจในการใช้งานเครื่องมือต่างๆ ค่ะ
_____________________________________________________________________________________________

----------------------------------------------------------------------------------------------------------------------------------------------------------------

Return to “SQL Knowledge”

Who is online

Users browsing this forum: No registered users and 5 guests