我在“ where子句”中遇到错误“未知列'stud.id'。在我的文件和数据库中都没有任何stud.id。您认为这是什么问题?我使用Codeigniter 4。
下面是我在控制器上的代码:
$model = new Mod_Stud();
$id = $this->request->getVar('stud_id');
$data = [
'stud_id' => $this->request->getVar('stud_id'),
'lname' => $this->request->getVar('lname'),
'fname' => $this->request->getVar('fname'),
'mname' => $this->request->getVar('mname'),
];
$save = $model->update($id,$data);
return redirect()->to( base_url('/') );
我的模型代码:
protected $table = 'stud';
protected $allowedFields = ['stud_id', 'sy', 'dpt', 'grd', 'lname', 'fname', 'mname', 'gender', 'bday', 'birthplace', 'religion', 'nationality', 'country', 'address', 'f_name', 'f_occ', 'm_name', 'm_occ', 'g_name', 'g_rel', 'created_at', 'updated_at'];
unknown-column-stud-id-in-where-clause:-此错误是由于数据库引起的...因为使用id coloumn wgich在数据库中不可用或不正确..让我们假设我有3我的数据库表“ ID”,“名称”,“否”中显示
因此,如果需要选择“ ID”,我必须使用关键字“ ID”,如果我使用“ id”而不是“ ID”,则会出现此错误(unknown-column-stud-id-in-where-clause) 。因此,请检查数据库列并将其复制粘贴到需要选择的where子句中。
评论后更新: