2016-04-23 75 views
0

有些東西讓我無法修復,希望得到一些幫助。JDBC刪除條件聲明

我想從Java中刪除條件滿足的記錄。下面是條件爲在MySQL工作:

Delete FROM bookingtable WHERE `Date` = '2016-04-23'; 

現在,想實現到Java這個我有寫在下面(不工作):我用

String s1 = "Delete FROM bookingtable " + "WHERE `Date` = "+formatted; 
      System.out.println(s1); 

我SYSOUT聲明用於調試打印出:

Delete FROM bookingtable WHERE `Date` = 2016-04-23 

所以它看起來像我在正確的軌道上,除了我需要日期撇號,使其工作? - 我怎麼真的去做這件事?

回答

0

你忘了加引號逃逸周圍格式:

String s1 = "Delete FROM bookingtable " + "WHERE `Date` = \"" + formatted + "\""; 
+0

貌似正確的想法,但我現在有這個錯誤'java.sql.BatchUpdateException:在「where子句未知列「2016年4月23日」 '' – Toblerone

+1

好吧,我通過將它改爲撇號來修復它!謝謝'String s1 =「Delete FROM bookingtable」+「WHERE'Date' ='」+ formatted +「'」;' – Toblerone

+0

那些看起來像刻度線而不是單引號字符。 –