繁体   English   中英

字符串作为 Laravel 迁移中的主键

[英]String as Primary Key in Laravel migration

我不得不更改数据库中的一个表,以便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 列“代码”在没有键长度的键规范中使用(SQL:alter table settings add primary key settings_code_primary ( code )

我尝试将正常的increments id保留在那里并在不同的迁移中修改表,但同样的事情发生了。

关于我做错了什么的任何想法?

Laveral Version 5.4.23

将其更改为字符串。

$table->string('code', 30)->primary();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM