【发布时间】:2021-08-25 01:24:32
【问题描述】:
这是我的桌子
我的错误似乎表明,当我尝试运行 insert eloquent 时,我的两个 id 列 给出一个空值,这就是问题:
SQLSTATE[23502]:非空违规:7 错误:关系“hms_bbr_category”的列“id”中的空值违反非空约束细节:失败行包含(null,null,Insert 1,Insert Desc,null,空,空,空,空,空,空,空,空,空)。 (SQL:插入“hms_bbr_category”(“category_name”,“category_description”)值(Insert 1,Insert Desc)返回“id”)
型号: HmsBbrCategory
class HmsBbrCategory extends Model
{
protected $table = 'hms_bbr_category';
protected $primaryKey = 'id';
public $timestamps = false;
}
路线:
Route::get('/bbr-category-configuration', function(){
$addCategory = new App\Models\HmsBbrCategory;
$addCategory->category_name='Insert 1';
$addCategory->category_description='Insert Desc';
$addCategory->save();
});
请注意,我一开始很简单,点击路由链接时插入触发。
我尝试手动插入增量选项,但它似乎仍然无法正常工作。
$addCategory = id->id + 1;
$addCategory = category_id->category_id + 1;
感谢您的帮助,如果问题仍需要澄清,请随时告诉我详细说明
更新
-
请注意,我没有通过迁移创建此表,此表按原样提供给我,不允许更改。
-
用包含“NOT NULL”的列更新了我的插入,但我得到了另一个错误:
$addCategory = new App\Models\HmsBbrCategory; $addCategory = id->id + 1; $addCategory = category_id->category_id + 1; $addCategory->category_name='Insert 1'; $addCategory->category_description='Insert Desc'; $addCategory->created_by='Me'; $addCategory->category_description=CURRENT_TIMESTAMP; $addCategory->save();
错误:
Symfony\Component\Debug\Exception\FatalThrowableError
syntax error, unexpected '->' (T_OBJECT_OPERATOR)
【问题讨论】:
-
粘贴你的表格完整结构
-
已添加,希望对您有所帮助
-
你是如何创建表格的?使用 laravel 迁移?你是这样做的吗? laravel.com/docs/master/migrations#column-method-bigIncrements
-
桌子给了我,我已经被创建了
-
$addCategory = id->id + 1;是无效语法...它应该是$addCategory->id = $addCategory->id + 1;,尽管这不起作用,因为默认情况下$addCategory->id将是null... 你为什么要尝试像这样手动设置id;它应该是一个自动递增的主键。$addCategory = category_id->category_id + 1;也无效。请使用正确的 PHP stynax。
标签: sql laravel eloquent sql-insert