【发布时间】:2015-04-22 00:13:48
【问题描述】:
我有一个简单的 Laravel 迁移文件,指定了一个复合主键:
// ...
public function up()
{
Schema::create('my_super_long_table_name', function($table)
{
$table->integer('column_1');
$table->integer('column_2');
$table->integer('column_3');
$table->primary(['column_1', 'column_2', 'column_3']);
});
}
// ...
在运行php artisan migrate 时会抛出此错误:
SQLSTATE[42000]: Syntax error or access violation: 1059 Identifier name 'my_super_long_table_name_column_1_column_2_column_3' is too long
【问题讨论】:
-
如果您可以指定要从中迁移的确切版本以及要迁移到的版本,这可能会有所帮助。
-
laravel 中的迁移是一个定义数据库结构的文件。不是从一个版本到另一个应用程序的“真正”迁移过程。