データベース内のテーブルを変更して、primary key
は標準のincrements
ではありません。
移行は次のとおりです。
public function up()
{
Schema::create('settings', function (Blueprint $table) {
$table->text('code', 30)->primary();
$table->timestamps();
$table->text('name');
$table->text('comment');
});
}
ただし、MySQLは次のように戻り続けます。
構文エラーまたはアクセス違反:1170 BLOB/TEXT列 'code'がキーの指定なしでキーの指定に使用されました(SQL:alter table
settings
add primary keysettings_code_primary
(code
)
通常のincrements
id
をそのままにして、別の移行でテーブルを変更しようとしましたが、同じことが起こります。
私が間違っていることのアイデアはありますか?
Laveral Version 5.4.23
文字列に変更します。
$table->string('code', 30)->primary();