Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wordpress-seo domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vinascript/html/wp-includes/functions.php on line 6114
Fix lỗi “#1067 – Invalid default value for ‘post_date'” trên WordPress - VinaScript

Latest Post

Triển khai dự án PHP, Mysql với Nginx trên Docker Tìm hiểu về HTML – Ưu điểm, nhược điểm và cách hoạt động của HTML

Khi bạn can thiệp và chỉnh sửa dữ liệu trực tiếp trên cơ sở dữ liệu của WordPress, thường thấy lỗi khi thực hiện lệnh ALTER. Một ví dụ là bạn gặp thông báo lỗi như sau:

“Error Code: 1067. Invalid default value for ‘post_date’.”

Lý do chính của lỗi này liên quan đến chế độ (sql_mode) của MySQL Server. Chúng ta có thể kiểm tra sql_mode hiện tại bằng cách thực hiện câu lệnh SQL sau:

SELECT @@sql_mode;

Trong danh sách sql_mode mặc định, có hai chế độ là “NO_ZERO_IN_DATE” và “NO_ZERO_DATE” có thể gây ra vấn đề cho việc chỉnh sửa cơ sở dữ liệu. Điều này liên quan đến giá trị mặc định mà WordPress thiết lập cho cột “post_date” là “0000-00-00 00:00:00”, và sql_mode ngăn chặn giá trị này.

Để giải quyết vấn đề, bạn có thể cài đặt lại sql_mode khi thực hiện lệnh ALTER. Dưới đây là một ví dụ về việc thực hiện lệnh ALTER cùng với việc set lại sql_mode:

SET SQL_MODE = “ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”;
ALTER TABLE `wp_posts`
ADD COLUMN `is_featured` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 AFTER `comment_count`

Bằng cách này, bạn có thể thêm trường “is_featured” vào cơ sở dữ liệu của WordPress mà không gặp lỗi.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *