Kendala a database error occurred pada codeigniter kenapa ya?

A Database Error Occurred Error Number: 1052

Column 'Id_mahasiswa' in where clause is ambiguous

SELECT * FROM `tbl_kpsatu` `a` JOIN `tbl_proposal` `b` ON `b`.`Id_proposal` = `a`.`Id_proposal` WHERE `Id_mahasiswa` = '2'

Filename: C:/xampp/htdocs/kerja_praktik/system/database/DB_driver.php

Line Number: 691

public function getbyId($Id_mahasiswa) { $this->db->from('tbl_kpsatu a'); $this->db->join('tbl_proposal b', 'b.Id_proposal = a.Id_proposal'); $this->db->where('Id_mahasiswa', $Id_mahasiswa); $query = $this->db->get(); return $query->result();

}

public function index() { $Id_mahasiswa = $this->session->userdata('Id_mahasiswa'); $data['kpsatu'] = $this->Model_Kpsatu->getbyId($Id_mahasiswa); $data['status'] = $this->Model_proposal->cekdata($Id_mahasiswa);

avatar Zidannnn
@Zidannnn

5 Kontribusi 0 Poin

Diperbarui 4 tahun yang lalu

2 Jawaban:

Itu query JOIN yah, jangan sampe ada field yg sama antara tabel yg mau di join. Itu noticenya 'Column 'Id_mahasiswa' in where clause is ambiguous', artinya program nya bingung ini field id_mahasiswa yg mana? ambigu dianya.

avatar Ahmad554
@Ahmad554

95 Kontribusi 39 Poin

Dipost 4 tahun yang lalu

solusinya kasih nama table sebelum nama kolom nya, itu dikarenakan ada beberapa tabel yang memiliki nama yang sama sehingga terjadi ambigu

contoh nya seperti dibawah ini

<pre> select nama_table1.nama_kolom, nama_table2.nama_kolom where nama_table1.nama_kolom </pre>

avatar Terra
@Terra

81 Kontribusi 39 Poin

Dipost 4 tahun yang lalu

Login untuk ikut Jawaban