2012-10-15 58 views
0

我得到了這樣的錯誤笨不能插入記錄到數據庫

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘Satuan, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’)’ at line 1 

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga` Satuan, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’) 

它指的是我的活動記錄模式

function create($kmj,$kkmj,$njmj,$hs,$s) 
{ 
    $data=array('Kode_Material_Jasa' => $kmj, 'Kode_Kategori_Material_Jasa' => $kkmj, 'Nama_Jenis_Material_Jasa' => $njmj, 'Harga Satuan' => $hs, 'Satuan' => $s); 
    $this->db->insert('ms_material_jasa',$data); 

} 

這裏是我的控制器

function tambah() 
{ 
    $data['kmj'] = $this->input->post('kmj'); 
    $data['kkmj'] = $this->input->post('kkmj'); 
    $data['njmj'] = $this->input->post('njmj'); 
    $data['hs'] = $this->input->post('hs'); 
    $data['s'] = $this->input->post('s'); 


    $data['title'] = 'QB Tambah Material/Jasa'; 
    $data['pesan'] = $data['kmj'].' berhasil ditambahkan ! '; 


    $this->form_validation->set_rules('kmj','Kode Material/Jasa','trim|required|min_length[2]|max_length[20]|xss_clean'); 
    $this->form_validation->set_rules('kkmj','Kode Kategori Material/Jasa','trim|required|min_length[2]|max_length[20]|xss_clean'); 
    $this->form_validation->set_rules('njmj','Nama Jenis Material/Jasa','trim|required|min_length[2]|max_length[20]|xss_clean'); 
    $this->form_validation->set_rules('hs','Harga Satuan','trim|required|min_length[2]|numeric|max_length[20]|xss_clean'); 
    $this->form_validation->set_rules('s','Satuan','xss_clean'); 

    if($this->form_validation->run() == false) 
    { 
     $lastval = $this->m_admin->getlastval('KMJ','ms_material_jasa','kode_material_jasa'); 
     $data['nextval'] = $this->m_admin->gencode('KMJ',3,$lastval); 


     $this->load->view('head',$data); 
     $this->load->view('content/add_material_jasa',$data); 
    } 
    else 
    { 

     $this->m_materialjasa->create($data['kmj'],$data['kkmj'],$data['njmj'],$data['hs'],$data['s']); 
     $data['kirim'] = $this->m_materialjasa->read(); 
     $this->load->view('head',$data); 
     $this->load->view('v/vkategorimaterial',$data); 


    } 

} 

外觀如下面的查詢

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga` Satuan, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’) 

是正確的,這裏是ms_material_jasa表。它看起來像條目不會中斷數據庫上的數據類型.length。我不知道哪裏出了問題,我該如何解決這個問題? enter image description here

+1

PS。你可能想回去接受人們在過去幾天給你的答案。 62%的接受率很低。 –

回答

0

您的報價在'Harga Satuan'字段列表中的錯誤位置。錯誤實際上是這樣說的。 此致:

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga` Satuan, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’) 

正確:

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga_Satuan`, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’) 
0

你已經把不正確的字段名稱。請糾正這一點,把Harga_Satuan代替Harga Satuan

function create($kmj,$kkmj,$njmj,$hs,$s) 
{ 
    $data=array('Kode_Material_Jasa' => $kmj, 'Kode_Kategori_Material_Jasa' => $kkmj, 'Nama_Jenis_Material_Jasa' => $njmj, 'Harga_Satuan' => $hs, 'Satuan' => $s); 
    $this->db->insert('ms_material_jasa',$data); 

} 

和您的查詢應該是

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga_Satuan`, `Satuan`) VALUES (‘KMJ001’, ‘KKMJ005’, ‘asdf asdf’, ‘123123’, ‘kg’) 
0

問題可能是聽到 '價格Satuan'=> $ HS 沒有這樣的領域。

0

正確的一項

INSERT INTO `ms_material_jasa` (`Kode_Material_Jasa`, `Kode_Kategori_Material_Jasa`, `Nama_Jenis_Material_Jasa`, `Harga Satuan`, `Satuan`) VALUES ('KMJ001', 'KKMJ005', 'asdf asdf', '123123', 'kg') 
0

問題是活動記錄未能把撇號Harga Satuan,

$data=array('Kode_Material_Jasa' => $kmj, 'Kode_Kategori_Material_Jasa' => $kkmj, 'Nama_Jenis_Material_Jasa' => $njmj, 'Harga Satuan' => $hs, 'Satuan' => $s); 
    $this->db->insert('ms_material_jasa',$data); 

,也許是因爲詞與詞之間,並在空間數據庫帶和下劃線。 來糾正這個改變這樣的代碼。

function create($kmj,$kkmj,$njmj,$hs,$s) 
{ 
    $data=array('Kode_Material_Jasa' => $kmj, 'Kode_Kategori_Material_Jasa' => $kkmj, 'Nama_Jenis_Material_Jasa' => $njmj, 'Harga_Satuan' => $hs, 'Satuan' => $s); 
$this->db->insert('ms_material_jasa',$data); 


} 

希望能解決問題。