Asked Jan 15th, 2019 2:53 PM 130 0 1
  • 130 0 1
0

Cách xoá dữ liệu triệt để

Share
  • 130 0 1

Các anh chị cho em hỏi làm thế nào để xoá sạch dữ liệu trong cơ sở dữ liệu khi sử dụng ruby on rails. Em có tạo 1 vài record cho bảng A, sau đó em xoá hết dữ liệu của bảng A này đi và tạo record mới thì record mới lúc này có id bắt đầu từ vị trí tiếp theo tính cả những record đã bị xoá. Em đã thử dùng delete_all và destroy_all đều ra như trên. 😦

luvasa @sangnuce
Jan 15th, 2019 3:08 PM

1 ANSWERS


Answered Jan 15th, 2019 3:10 PM
Accepted
+3

Khi bạn dùng delete_all hay destroy_all thì bạn mới chỉ xoá các bản ghi của bảng, còn giá trị AUTO_INCREMENT của bảng vẫn chưa được reset nên khi tạo bản ghi mới nó sẽ tiếp tục tăng chứ không bắt đầu từ 1. Để xoá hết bản ghi của bảng và đồng thời reset giá trị AUTO_INCREMENT, bạn dùng TRUNCATE nhé: Model.connection.truncate(Model.table_name). Ví dụ: User.connection.truncate(User.table_name)

Share