2017-10-10 82 views
-1
String query="insert into employee values('"+e.getId()+",'"+e.getName()+"',"+e.getSalary()+")"; 

此代碼有什麼問題。錯誤 - 字符串不能正確地用雙引號括起來;雙引號未正確關閉

+6

打印您的查詢,您應該'insert into employee values('someid,'somename',somesalary)' - 然後看看'someid'。 – Thomas

+0

@ thomas好景點!它不是正確關閉id,應該看起來像''「... + e.getId()+」','「...'注意'''在''末尾',' –

回答

0

引述缺少id字段

String query="insert into employee values('"+e.getId()+"','"+e.getName()+"',"+e.getSalary()+")"; 
0

你錯過了幾個報價:

String query="insert into employee values('"+e.getId()+"','"+e.getName()+"','"+e.getSalary()+"')"; 

即在e.getId()收盤之一,無論在e.getSalary()

+0

工資可能是數字 – Lothar

+0

@洛薩是真的,但通常我會想像id有更好的機會,所以我認爲OP也錯過了這一點。 – notyou

0

你對於ID只有一個單引號。刪除它(id聲音數字)或相應地添加一個關閉的。

更好的是,使用PreparedStatement並使用相應的方法設置參數以避免整個引用話題並防止SQL注入攻擊。