Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL và khóa bảng, đọc, sau đó cắt bớt

Bạn không thể cắt bớt một bảng bị khóa để viết. Điều này là do "truncate" có nghĩa là "phá hủy bảng và tạo lại một bảng mới với cùng một lược đồ."

Tuy nhiên, bạn có thể rỗng cái bàn. Thay vì TRUNCATE TABLE asin_one_time_only sử dụng DELETE FROM asin_one_time_only . Lưu ý rằng điều này sẽ không đặt lại cách đánh số tự động gia tăng. Nếu bạn cũng muốn đặt lại nó, hãy sử dụng ALTER TABLE asin_one_time_only auto_increment=1

Tôi khuyên bạn nên làm điều này:

LOCK TABLES asin_one_time_only READ;
SELECT asin FROM asin_one_time_only;
-- minimize the possibility of someone writing to the table in-between
-- an "UNLOCK TABLES" and a "LOCK TABLES" by just issuing a new LOCK TABLES
-- I am not 100% sure that MySQL will do this atomically, so there is a
-- possibility that you may delete a row that was not read.
-- If this is unacceptable, then use a "LOCK TABLES asin_one_time_only WRITE"
-- from the very beginning.
LOCK TABLES asin_one_time_only WRITE;
DELETE FROM asin_one_time_only;
ALTER TABLE asin_one_time_only auto_increment=1;
UNLOCK TABLES;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phân biệt chữ hoa chữ thường trong Mysql sử dụng Truy vấn chọn nơi

  2. Cách tính tổng một cột dựa trên nhóm trong MySQL

  3. Làm cách nào để thay đổi kiểu dữ liệu của bảng tính đã nhập trong mysql?

  4. Các phương pháp hay nhất để tối ưu hóa trang web LAMP để tăng tốc độ?

  5. Làm cách nào để tạo bảng phân tích nhóm thuần tập hàng tuần bằng mysql?