语法错误或访问冲突:1064:在'unsigned not null附近使用的语法,modelName varchar(191)not null,title varchar(191)not n

时间:2018-02-02 11:41:58

标签: php database phpmyadmin migration laravel-5.4

一切正常,直到我开始在users表中使用blogs表id作为外键并尝试将其迁移到数据库中。我开始收到

的错误
  

SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;检查与您的MariaDB服务器版本对应的手册,以获得正确的语法     ax使用'unsigned not null,modelName varchar(191)not null,title varchar(191)不是第1行的n'(SQL:create table blogs({{1 int unsigned not null auto_increment      主键,id varchar(191)unsigned not null,user_id varchar(191)not null,modelName varchar(191)not null,title int unsigned not null, price文字不是n     ull,description int not null,status varchar(191)not null,photo_id varchar(191)not null default'1',company_id timestamp null,{{1 timestamp null)默认c     haracter set utf8mb4 collat​​e utf8mb4_unicode_ci)   在Connection.php第445行:     SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;检查与您的MariaDB服务器版本对应的手册,以获得正确的语法     ax在'unsigned not null附近使用,created_at varchar(191)不为null,updated_at varchar(191)不是n'在第1行**

这是用户表结构

modelName

这是博客表结构

title

我已经尝试了几乎所有可能出错的知识,并尝试了在线提供的解决方案,但现在似乎没有任何工作。任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:7)

string

$table->integer('user_id')->unsigned();类型的字段不能是无符号的。改为

{{1}}