目标:更改表设置中的列元设置。
我试图在我之前创建的表中更改列名,因此我遵循了以下步骤:
composer require doctrine/dbalphp artisan make:migration update_oldFileName_tableupdate_oldNameFile_table.phpSchema::table('settings', function (Blueprint $table) {
$table->renameColumn('meta-description', 'metaDescription');
});php artisan migrate但是,它向我显示了以下错误:
SQLSTATE42000:语法错误或访问冲突: 1064您的SQL语法中有错误;检查与MariaDB服务器版本对应的手册,以获得在第1行使用MariaDB metaDescription VARCHAR(255) NOT NULL的正确语法(SQL: ALTER设置更改metaDescription (255) NOT NULL)
我认为问题是因为-在“元-描述”,但我想改变它!
发布于 2022-08-24 09:03:30
您可以在列名周围添加回标:
$table->renameColumn('`meta-description`', 'metaDescription');问题是-是个操作员。后排确保这一点被忽略。
发布于 2022-08-24 08:58:13
您需要doctrine/dbal包来执行此操作。
composer require doctrine/dbal再次运行迁移,错误就会消失。
https://stackoverflow.com/questions/73470122
复制相似问题