ฉันจะรีเซ็ตตาราง mysql โดยอัตโนมัติเพิ่มขึ้นเป็น 1 ใน phpMyAdmin ได้อย่างไร


20

ฉันรู้ว่าใน MySQL ที่บรรทัดคำสั่งฉันสามารถรีเซ็ตเขตข้อมูลที่เพิ่มขึ้นอัตโนมัติของตารางเป็น 1 ด้วยสิ่งนี้:

ALTER TABLE tablename AUTO_INCREMENT = 1

ฉันอยากรู้ว่ามีวิธีการทำเช่นนี้จากภายใน phpMyAdmin มีบางอย่างเช่นกล่องกาเครื่องหมายเพื่อรีเซ็ตการเพิ่มอัตโนมัติหรืออย่างอื่นตามบรรทัดเหล่านั้นหรือไม่

ไม่ใช่ว่ามีอะไรผิดปกติกับแนวทางบรรทัดคำสั่ง อีกหนึ่งสิ่งที่อยากรู้อยากเห็นที่ฉันคิด ... ขอขอบคุณล่วงหน้า!

คำตอบ:


19

phpMyAdmin

บางทีคุณสามารถเลือกแท็บการดำเนินการ phpMyAdmin:

  • ใน phpMyAdmin คลิกบนตารางที่คุณต้องการรีเซ็ตหรือเปลี่ยนค่า AUTO_INCREMENT
  • คลิกที่แท็บปฏิบัติการ
  • ในกล่องตัวเลือกตารางค้นหาฟิลด์ auto_increment
  • ป้อนค่าเริ่มต้น auto_increment ใหม่
  • คลิกที่ปุ่มไปสำหรับกล่องตัวเลือกตาราง

เนื่องจากหนึ่งในคำถามที่พบบ่อยที่สุดสำหรับ phpmyadmin นี้คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับสิ่งนี้ได้ในบล็อกนี้: http://trebleclick.blogspot.com/2009/01/mysql-set-auto-increment-in-phpmyadmin.html

ข้อมูลเพิ่มเติม

สำหรับตารางว่างอีกวิธีในการรีเซ็ตแอตทริบิวต์ auto_increment คือการเรียกใช้

TRUNCATE TABLE mydb.tablename;

อย่าเรียกใช้สิ่งนี้หากคุณมีข้อมูลอยู่ในนั้น หากคุณต้องการรวบรวมข้อมูลจากนั้นเป็นแขกของฉัน

ใน phpmyadmin เพียงคลิกSQLแท็บป้อนคำสั่งและเรียกใช้

สำหรับตารางที่ไม่มีข้อจำกัด คุณอาจต้องการปรับแอตทริบิวต์ auto_increment เป็น id ที่มีอยู่สูงสุดที่ใช้งานในกรณีที่มีการลบรายการที่สูงขึ้น

ก่อนอื่นปรับตารางให้เหมาะสม

OPTIMIZE TABLE mydb.mytable;

ถัดไปค้นหาค่าสูงสุดสำหรับคอลัมน์ auto_increment (บอกว่าเป็นid)

SELECT MAX(id) maxid FROM mydb.mytable;

สมมติว่าคำตอบส่งคืน 27 ไปที่แท็บการดำเนินการและป้อน 28


+1 สำหรับการตัดทอนฉันกำลังวางและสร้างใหม่
mckenzm

@mckenzm ใต้ฝากระโปรง TRUNCATE TABLE กำลังลดลงและสร้างใหม่ ( dev.mysql.com/doc/refman/5.6/en/ … )
RolandoMySQLDBA

@mckenzm ฉันเพิ่งอ่านโปรไฟล์ของคุณ COBOL 25 ปี ??? คุณวิญญาณทรมานที่น่าสงสาร
RolandoMySQLDBA

TBH มันอาจเป็น 13 x สองปีเดียวกัน ... และส่วนมากมันง่าย SQL ฝังตัว, Command Level CICS ,, VMS System call ... มาโครที่ประมวลผลล่วงหน้า สิ่งเลโก้
mckenzm

11

ในฐานะที่เป็นส่วนเสริมของคำตอบอื่น ๆ ฉันต้องการวิธีการมองเห็นที่ชัดเจนยิ่งขึ้น:

  1. คลิกตารางที่คุณต้องการเปลี่ยน

  2. คลิกOperations:

ป้อนคำอธิบายรูปภาพที่นี่

  1. ดูภายใต้ " ตัวเลือกตาราง ":

ป้อนคำอธิบายรูปภาพที่นี่

โปรดทราบว่า:

–§–   คุณไม่สามารถรีเซ็ตตัวนับเป็นค่าที่น้อยกว่าหรือเท่ากับค่าที่ใช้งานอยู่ในปัจจุบัน สำหรับทั้ง InnoDB และ MyISAM หากค่าน้อยกว่าหรือเท่ากับค่าสูงสุดในAUTO_INCREMENTคอลัมน์ในปัจจุบันค่าจะถูกรีเซ็ตเป็นค่าAUTO_INCREMENTคอลัมน์สูงสุดในปัจจุบันบวกหนึ่ง


1
ฉันยังคงใช้ phpMyAdmin 4.0.1-rc1 ฉันเดาว่ามันเก่าเกินไปเนื่องจากฉันไม่มีตัวเลือก AUTO_INCREMENT ในหน้านั้น
Kar.ma

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.