当前位置: 首页 > 面试题库 >

在Laravel迁移中使列不可为空

蒋何平
2023-03-14
问题内容

我正在编写一个迁移,以立即在表中创建某些列nullable。对于down函数,我当然想not nullable再次创建这些列。我浏览了架构生成器docs,但找不到实现此目的的方法。

任何帮助,将不胜感激。


问题答案:

在Laravel 5之前,还没有使用架构生成器来更改现有表列的Laravel本机方式。您需要为此使用原始查询。

但是,从Laravel 5开始,您可以使用:

$table->...->nullable(false)->change();


 类似资料:
  • 我正在编写一个迁移,以使表

  • 我用未签名的创建了一个迁移。如何在新迁移中编辑,使其也可以?

  • 我买了新的MacBook Pro,我在其中安装了mysql,然后安装sequel Pro来查看表和数据库,但是当我命令时,这个错误指控错误图像 近30个小时来,我一直在忍受这个问题,有人能帮我看一下吗

  • 命令命令结果: 问题是我只有users_table,admins_table,volunteers_table,opinions_table和contact_tablelaravel迁移文件夹...他们从哪里来,从哪里迁移... 为什么会产生这个问题基本上我是在laravel应用程序中使用chatify实时聊天软件包所有以上消息收藏夹化身表都是该软件包的一部分,但我已经从laravel应用程序中删

  • 我在文件中的迁移中添加了一个新表。。 这是代码: 当我运行时,我的数据库中只有默认的laravel用户(和迁移)表。没有货币。 原因可能是什么? 编辑 迁移一切都很顺利。问题是: SQLSTATE[42000]:语法错误或访问冲突:1071指定的密钥太长;最大密钥长度为767字节(SQL:更改表用户添加唯一users_email_unique(电子邮件)) SQLSTATE[42000]:语法错误

  • 如果运行,它会失败 未找到基表或视图:1146表*.迁移不存在。 数据库是空的。 如果我运行我会看到迁移表,但它是空的。 DB显示迁移表,但它是空的。 如果我再次运行,数据库再次为空,我会得到相同的错误: 未找到基表或视图:1146表*.迁移不存在。 也许有人知道这里发生了什么。