2011-11-08 90 views
-1

我有簡單的下面的代碼:將新行插入數據庫java?

try { 
    Main.db.getCon().createStatement().executeUpdate("INSERT INTO qos_qoe (channel_id) VALUES ('vtv1') "); 
    Main.db.getCon().createStatement().executeUpdate("UPDATE qos_qoe SET channel_id = 'vtv1' WHERE id = 3 "); 

} catch (SQLException e) { 
// TODO Auto-generated catch block 
e.printStackTrace(); 
} 

UPDATE命令運行良好,但INSERT命令沒有。直接在phpmyadmin中運行INSERT命令顯示沒有問題。問題在哪裏? 感謝您的回覆!

+3

「不運行」是不夠的信息。你有例外嗎?如果是,哪一個。 –

+0

對不起!我還是Java新手,所以我只知道代碼無法運行,如果我不評論INSERT行。 –

+0

然後向我們展示如果您對該行取消註釋,則獲得堆棧跟蹤 –

回答

1

可能ratedvote_count在db中不是char類型。無論如何,你應該使用PreparedStatement我會假設你所有的變量是字符串

String statement = "UPDATE iptv_media_source SET rated = ?, vote_count = ? WHERE channel_id= ? "; 
PreparedStatement st = Main.db.getCon().prepareStatement(statement); 
st.setString(1, rated); 
st.setString(2, vote_count); 
st.setString(3, channelId);  
st.executeUpdate();