php - MySQL 1253 COLLATION 错误 PHP

标签 php mysql

我在尝试创建 MySQL 表时遇到此错误。

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1253 COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'utf8mb4'' in /home/vagrant/Projects/test_herbert/wp-content/plugins/TestHerbertPlugin/vendor/illuminate/database/Connectors/MySqlConnector.php on line 40( ! ) PDOException: SQLSTATE[42000]: 

这是破坏它的代码。当我取出它时,项目工作正常。

use Illuminate\Database\Capsule\Manager as Capsule;

Capsule::schema()->create('tasks-test', function($table) {
    $table->increments('id');
});

感谢任何设法帮助我的人。

最佳答案

This is the same answer I posted on Getting an error when using COLLATE in a Mysql query

确保您使用的归类与您的字符集兼容。 (例如,UTF8 的排序规则与 UTF8MB4 不兼容)

使用此语句检查您的字符集和排序规则(来自 MySQL Database Character Sets and Collation )

SELECT DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'db_name';

如果它们不同,您必须重新配置您的数据库。

关于php - MySQL 1253 COLLATION 错误 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36136724/

相关文章:

PHP MySQL 关联数组使用 array_push

PHP OWASP TOP 5 - 防止跨站脚本 (XSS) 列表项 4 和 5

php - 如何在PHP中查找数据库结果集的哈希值

php - 将 PHP 与 Mysqli 一起使用时发生的困惑情况

php - 更改复选框值并插入到数据库

php - 强制小写 .htaccess

MySQL优化: LEFT JOIN

php - MySQL SELECT 有时即使存在也找不到任何内容

php - 如何为我的类/函数获取 DB-Connection

mysql - 更新 MySQL 实例 - 在 2019 年 10 月 31 日之前更新您的 Amazon RDS SSL/TLS 证书