【问题标题】:General error: 1364 Field 'avatar' doesn't have a default value一般错误:1364 字段“头像”没有默认值
【发布时间】:2016-06-13 23:17:53
【问题描述】:

我有一个奇怪的错误,后面有很多数据,我不知道如何解决。

这是错误:

QueryException in Connection.php line 624: SQLSTATE[HY000]: General error: 1364 Field ‘avatar’ doesn’t have a default value (SQL: insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (admin, contact@xxxxxxx.com, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, admin, 1, 2016-03-01 13:34:11, 2016-03-01 13:34:11))

如果我参考第 624 行的代码,如图所示,这是文件“connection.php”中所写的内容:

throw new QueryException(
                $query, $this->prepareBindings($bindings), $e
            );

有什么想法吗?

谢谢!

编辑:这是后面的几行,你会看到它们的数量很大,我不知道它是否有帮助:

in Connection.php line 624
at Connection->runQueryCallback('insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (?, ?, ?, ?, ?, ?, ?)', array('usernamevalue', 'emailvalue@email.com', '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'admin', '1', '2016-03-01 13:57:40', '2016-03-01 13:57:40'), object(Closure)) in Connection.php line 580
at Connection->run('insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (?, ?, ?, ?, ?, ?, ?)', array('usernamevalue', 'emailvalue@email.com', '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'admin', '1', '2016-03-01 13:57:40', '2016-03-01 13:57:40'), object(Closure)) in Connection.php line 363
at Connection->statement('insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (?, ?, ?, ?, ?, ?, ?)', array('usernamevalue', 'emailvalue@email.com', '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'admin', '1', '2016-03-01 13:57:40', '2016-03-01 13:57:40')) in Connection.php line 320
at Connection->insert('insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (?, ?, ?, ?, ?, ?, ?)', array('usernamevalue', 'emailvalue@email.com', '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'admin', '1', '2016-03-01 13:57:40', '2016-03-01 13:57:40')) in Processor.php line 30
at Processor->processInsertGetId(object(Builder), 'insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`) values (?, ?, ?, ?, ?, ?, ?)', array('usernamevalue', 'emailvalue@email.com', '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'admin', '1', '2016-03-01 13:57:40', '2016-03-01 13:57:40'), 'id') in Builder.php line 1725
at Builder->insertGetId(array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1', 'updated_at' => '2016-03-01 13:57:40', 'created_at' => '2016-03-01 13:57:40'), 'id')
at call_user_func_array(array(object(Builder), 'insertGetId'), array(array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1', 'updated_at' => '2016-03-01 13:57:40', 'created_at' => '2016-03-01 13:57:40'), 'id')) in Builder.php line 933
at Builder->__call('insertGetId', array(array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1', 'updated_at' => '2016-03-01 13:57:40', 'created_at' => '2016-03-01 13:57:40'), 'id')) in Model.php line 1609
at Builder->insertGetId(array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1', 'updated_at' => '2016-03-01 13:57:40', 'created_at' => '2016-03-01 13:57:40'), 'id') in Model.php line 1609
at Model->insertAndSetId(object(Builder), array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1', 'updated_at' => '2016-03-01 13:57:40', 'created_at' => '2016-03-01 13:57:40')) in Model.php line 1579
at Model->performInsert(object(Builder), array()) in Model.php line 1485
at Model->save() in UserRepository.php line 89
at UserRepository->create(array('name' => 'usernamevalue', 'email' => 'emailvalue@email.com', 'password' => '$2y$10$LKucgBKpw4hfAQahVL5tVezYe0Tz84.FacXIIODK9blnJLy0Pa6/e', 'permission' => 'admin', 'status' => '1')) in AdminController.php line 37
at AdminController->save(object(Request), object(UserRepository))
at call_user_func_array(array(object(AdminController), 'save'), array(object(Request), object(UserRepository))) in Controller.php line 246
at Controller->callAction('save', array(object(Request), object(UserRepository))) in ControllerDispatcher.php line 162
at ControllerDispatcher->call(object(AdminController), object(Route), 'save') in ControllerDispatcher.php line 107
at ControllerDispatcher->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
at Pipeline->then(object(Closure)) in ControllerDispatcher.php line 108
at ControllerDispatcher->callWithinStack(object(AdminController), object(Route), object(Request), 'save') in ControllerDispatcher.php line 67
at ControllerDispatcher->dispatch(object(Route), object(Request), 'Smile\Http\Controllers\Installer\AdminController', 'save') in Route.php line 204
at Route->runWithCustomDispatcher(object(Request)) in Route.php line 134
at Route->run(object(Request)) in Router.php line 701
at Router->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
at Pipeline->then(object(Closure)) in Router.php line 703
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 670
at Router->dispatchToRoute(object(Request)) in Router.php line 628
at Router->dispatch(object(Request)) in Kernel.php line 214
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in SavableMiddleware.php line 33
at SavableMiddleware->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Language.php line 25
at Language->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in RequestTracker.php line 40
at RequestTracker->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 43
at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 17
at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 55
at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 61
at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 36
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 40
at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 43
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
at Pipeline->then(object(Closure)) in Kernel.php line 115
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 84
at Kernel->handle(object(Request)) in index.php line 62

【问题讨论】:

  • 正确阅读错误信息:您尝试将数据插入表中并且没有为没有默认值的列提供值 (avatar),所以您要么必须在插入语句中包含该列,要么使用 HeidiSQL 或 MySQL 控制中心为 avatar 列提供默认值。

标签: php mysql database


【解决方案1】:

这意味着头像列没有默认值,并且您的插入命令没有将值传递给该列。您应该提供一个,您可以修改您的插入语句以将适当的值插入到头像。

insert into `users` (`name`, `email`, `password`, `permission`, `status`, `updated_at`, `created_at`, `avatar`) values (admin, contact@xxxxxxx.com, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, admin, 1, 2016-03-01 13:34:11, 2016-03-01 13:34:11, NULL)

为数据库中的avatar 列设置默认值。

ALTER TABLE foobar CHANGE COLUMN avatar <type>  DEFAULT <default_value>;

【讨论】:

  • 是的,但是在什么文件中,同一个?
  • 你能检查一下'avatar'列的类型并重写insert语句来插入一些东西吗?
  • 查看变量$query的定义位置。
  • 嗯……这是我在 CodeCanyon 上购买的代码,我没有得到他们的支持……我编辑了我的原始帖子,你能检查一下并告诉我你是否有更多关于我在哪里的线索应该编辑吗?谢谢!
  • 我认为最简单的方法是直接在数据库表上设置一个默认值,你可以这样做吗?
【解决方案2】:

您的表格中是否有头像列,您也可以引用您的价值观。

【讨论】:

  • 表格里确实有列头像...不过不知道加什么,在哪里...
【解决方案3】:

也许您创建的头像字段默认值为 none 且不为 null。但是您没有在模型中指定可填写的头像字段。尝试在您的模型中添加以下行。

protected $fillable = ['avatar'];

【讨论】:

    猜你喜欢
    • 2019-11-23
    • 2021-02-28
    • 2021-10-13
    • 2017-03-02
    • 2020-02-03
    • 2020-02-27
    • 2020-07-23
    • 2021-01-18
    • 2021-07-30
    相关资源
    最近更新 更多