Yêu cầu thg 1 15, 2019 2:53 CH 144 0 1
  • 144 0 1
0

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

Chia sẻ
  • 144 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. 😦

Avatar luvasa @sangnuce
thg 1 15, 2019 3:08 CH

1 CÂU TRẢ LỜI


Đã trả lời thg 1 15, 2019 3:10 CH
Đã được chấp nhận
+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)

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí