gpt4 book ai didi

php - 你如何使用 BIGINT 作为 Laravel 4 中的自动递增主键

转载 作者:可可西里 更新时间:2023-11-01 06:54:18 26 4
gpt4 key购买 nike

我正在尝试模仿 wordpress' primary key size这是 BIGINT(20) 但似乎 laravel 没有 native 函数来执行此操作。我看到了 page in the laravel forums并得到这样的代码:

$table->bigInteger('id')->primary();

但是当我在 artisan migrate 期间尝试将外键附加到该 id 时,会抛出一个 MYSQL 错误:

[Exception] SQLSTATE[HY000]: General error: 1005 Can't create table 'db.#sql- 1730_15' (errno: 150) (SQL: alter table users add constraint users_role_id_foreign foreign key (role_id) references roles (id)) (Bindings: array ( ))

执行此操作的正确方法是什么,或者我在哪里弄错了?

谢谢!

最佳答案

您很可能也忘记了将 role_id 外键的类型也设置为 BIGINT(20)。这实际上不是 Laravel 的问题,而是 MySQL 的问题。


顺便说一下,Laravel 确实有一个原生函数可以做到这一点:

$this->bigIncrements('id');

这会使其成为未签名自动递增主键

关于php - 你如何使用 BIGINT 作为 Laravel 4 中的自动递增主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17904819/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com