我在這裏錯過了一些愚蠢的東西嗎?語法錯誤與SQL在Java中
String update = "UPDATE Patients SET fullName = '" + patient.getName() + "',
houseNum = '" + patient.getHouseNum() + "',
address = '" + patient.getAddress() +"',
postCode = '" + patient.getPostCode() + "',
condition = '" + patient.getCondition() + "',
who = '" + patient.getWho() + "',
time = '" + patient.getTime() + "',
location = '" + patient.getLocation() + "',
actionTaken = '" + patient.getActionTaken() + "',
duration = '" + patient.getDuration() + "'
WHERE regNo = '" +patient.getNHSnum()+"'";
爲了它的緣故,我在這裏每一行都有新的格式。在我的文件中它是在一條線上。所有數據庫字段都是文本類型。
我得到的錯誤是:
[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement. -3503
編輯:
對於信息,下列工程確定:
String update = "UPDATE Patients SET fullName = '" + patient.getName() + "',
houseNum = '" + patient.getHouseNum() + "',
address = '" + patient.getAddress() +"',
postCode = '" + patient.getPostCode() + "',
condition = '" + patient.getCondition() + "'
WHERE regNo = '" +patient.getNHSnum()+"'";
EDIT2:
這裏更新嚴格克全:
UPDATE Patients SET fullName = 'Dave', houseNum = '5', address = 'Bla', postCode = 'PQ1 RS2', condition = 'Unknown', who = 'Test', time = 'Test1', location = 'Test2', actionTaken = 'Test3', duration = 'Test4' WHERE regNo = '1'
正如我所說的,在這個例子中,數據庫中的每個字段類型的文本
你錯過了一個事實,即你通過不用'PreparedStatement'參數來打開自己的SQL注入攻擊...... –
'patient'對象中每個方法的返回類型是什麼? –
最終查詢的樣子是怎樣的?在您的日期屬性中更新'.. –