2012-02-09 22 views
5

Chúng tôi có một cài đặt hiện đang chạy Magento CE v1.5 (nó đã được nâng cấp theo thời gian, tôi nghĩ rằng nó bắt đầu vào khoảng 1,1). Bảng sales_flat_quote hiện có tối đa 550.000 hàng trong đó. Một tỷ lệ phần trăm lớn trong số này có nullcustomer_id và đã được nhiều tháng. Tôi không thể nghĩ ra một lý do để giữ chúng xung quanh, vì chúng cũ và không liên kết với một khách hàng, chắc chắn không có cách nào để ai có thể truy cập vào báo giá đó một lần nữa. Có vẻ như kỳ lạ rằng Magento dường như không có chức năng tích hợp để loại bỏ những gì có vẻ như thông tin rác (họ có một cron để loại bỏ dấu ngoặc kép, nhưng theo như tôi có thể nói, nó chỉ loại bỏ dấu ngoặc kép đặt thành is_active false, mà theo như tôi có thể nói chỉ xảy ra khi báo giá được chuyển đổi thành một đơn đặt hàng).Bạn có thể xóa an toàn các mục cũ trong sales_flat_quote không?

Về cơ bản, những gì tôi yêu cầu là ... a.) Có an toàn để xóa các mục nhập này không? b.) Cách tốt nhất để làm điều đó (sql tinh khiết, thông qua mô hình, một số tùy chọn trong bảng điều khiển tôi đã bỏ lỡ, vv) là gì?

Trả lời

5

Chúng tôi đã có một số trang web cần xóa thông tin đơn đặt hàng sau khi chuyển từ dev sang sản xuất. Chúng tôi đã làm điều đó bằng cách cắt ngắn sales_flat_* và một số bảng khác. Chúng tôi không có bất kỳ vấn đề với nó. Tuy nhiên, tôi khuyên bạn nên kiểm tra mọi chỉnh sửa cơ sở dữ liệu trực tiếp trên COPY của cơ sở dữ liệu của bạn.

Bạn cũng có thể xóa bản ghi từ sales_flat_quote ngay cả khi bạn không xóa các bản ghi thứ tự tương ứng hoặc các bảng khác trong sales_flat_*. Có lẽ bạn chỉ nên xóa các bản ghi trong bảng báo giá đã quá 30 ngày, để khách hàng có quyền truy cập vào các giỏ hàng gần đây.

Đây là một bài đăng rất hữu ích từ Diễn đàn thương mại Magento. http://www.magentocommerce.com/boards/viewthread/1680/P405/

+0

Sau khi chạy nhiều bài kiểm tra, chúng tôi cuối cùng đã kết thúc xóa tất cả mọi thứ từ bảng sales_flat_quote của trang web hoạt động của chúng tôi sử dụng MySQL (DELETE thay vì TRUNCATE). Đến thời điểm này, chúng tôi đã không có hiệu ứng untoward. –

+0

Nếu bạn không cắt bớt các bảng sales_flat_ * khác thì bạn có thể kết thúc với một số nhận xét trong các đơn đặt hàng mới chuyển từ cũ, đặc biệt là nếu bạn đặt lại id auto_increment. – seanbreeden

+0

Theo như tôi có thể nói, tất cả các bảng liên quan đến báo giá khác có các ràng buộc khóa ngoài khi được yêu cầu. Không có gì khác được đặt lại, tôi chỉ xóa các hàng khỏi các bảng duy trì bất kỳ số gia tăng nào. –

Các vấn đề liên quan