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

MYSQL &innoDB thay đổi động AUTO_INCREMENT của một bảng

ALTER TABLE phải có các giá trị theo nghĩa đen trong đó vào thời điểm câu lệnh được phân tích cú pháp (tức là tại thời điểm chuẩn bị).

Bạn không thể đặt các biến hoặc tham số vào câu lệnh tại thời điểm phân tích cú pháp, nhưng bạn có thể đặt các biến vào câu lệnh before thời gian phân tích cú pháp. Và điều đó có nghĩa là sử dụng SQL động:

SET @new_index = (SELECT MAX(id) FROM sales );
SET @sql = CONCAT('ALTER TABLE sales AUTO_INCREMENT = ', @new_index);
PREPARE st FROM @sql;
EXECUTE st;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java kiểm tra xem giá trị có tồn tại trong cơ sở dữ liệu hay không

  2. Làm thế nào để kiểm tra xem một chuỗi có phải là JSON hay không?

  3. Chọn hàng trước mysql?

  4. MySQL:Cách tốt nhất để lưu trữ địa chỉ MAC?

  5. mysql export sql dump theo thứ tự bảng chữ cái, điều này gây ra lỗi ràng buộc khóa ngoại trong quá trình nhập