Laravel 如何使用postgresql数据库在heroku上添加新列
我在heroku上部署了我的laravel项目,效果非常好, 但当我通过尝试以下命令添加新列时 heroku运行php artisan迁移:刷新 在特定的表中,通过遵循官方文档,它在本地工作,并在heroku上产生问题 SQLSTATE[23502]:非空冲突:7错误:列“column\u name”Laravel 如何使用postgresql数据库在heroku上添加新列,laravel,postgresql,heroku,Laravel,Postgresql,Heroku,我在heroku上部署了我的laravel项目,效果非常好, 但当我通过尝试以下命令添加新列时 heroku运行php artisan迁移:刷新 在特定的表中,通过遵循官方文档,它在本地工作,并在heroku上产生问题 SQLSTATE[23502]:非空冲突:7错误:列“column\u name” 包含空值 在本地开发方面,我使用的是mysql数据库, 在heroku上,我使用的是postgresqlheroku Postgresadd-on本地数据与heroku上数据库中的数据不同。我猜您
包含空值 在本地开发方面,我使用的是mysql数据库,
在heroku上,我使用的是postgresqlheroku Postgresadd-on本地数据与heroku上数据库中的数据不同。我猜您的本地数据库是空的(或者至少这个表是空的),而heroku上的数据库中的表确实有数据。当您添加具有
非空
约束但没有默认值
的新列时,这些行以列名称->空
结束,这违反了约束。好的,谢谢您的回复,请指导我如何为列设置默认值。如果不查看您的代码,就无法真正提供帮助。如果您使用的是纯SQL(而不是ORM或查询生成器),它应该是ALTER TABLE ADD COLUMN not NULL DEFAULT
。谢谢,我已经解决了我的问题,您在本地没有与heroku上的数据库中相同的数据。我猜您的本地数据库是空的(或者至少这个表是空的),而heroku上的数据库中的表确实有数据。当您添加具有非空
约束但没有默认值
的新列时,这些行以列名称->空
结束,这违反了约束。好的,谢谢您的回复,请指导我如何为列设置默认值。如果不查看您的代码,就无法真正提供帮助。如果您使用的是纯SQL(而不是ORM或查询生成器),那么它应该是altertable ADD COLUMN not NULL DEFAULT
。谢谢,我已经解决了我的问题