How to insert Date into MySQL Database table in Java? -
how insert date, without time, mysql database table? tried these codes following exception:
com.mysql.jdbc.exceptions.jdbc4.mysqlsyntaxerrorexception: have error in sql syntax; check manual corresponds mysql server version right syntax use near 'mar 05 00:00:00 gmt-08:00 2014,1,1)' @ line 1 note: in mysql table, data type of column chose date datatype
string date = "\\d\\d\\d\\d\\d[0-1][0-9]\\d[0-3][0-9]"; while (datematcher.find()) { string date = datematcher.group().trim(); dateformat formatter = new simpledateformat("yyyy-mm-dd"); date mydate = formatter.parse(date); db.insert_date(mydate,2,1); } i've problem date part query inserting date :
// insert date public void insert_date(date date_str, int sentence_id ,int document_id ){ // statements allow issue sql queries database try { statement = connect.createstatement(); system.out.println( "insert date(date_str,sen_id,doc_id) " + " values(" + date_str + "," + sentence_id + "," + document_id + ")" ); statement.executeupdate( "insert test.date(date,sen_id,doc_id)" + " values(" + date_str + "," + sentence_id + "," + document_id + ")" ); } catch(exception e ){system.out.println(e);}; // result set result of sql query }
first of all, persist java.util.date database in java, have convert java.sql.date. fortunate thing jdbc sql date it's subclass of java date.
therefore, create java.sql.date java.util.date, have this:
dateformat formatter = new simpledateformat("yyyy-mm-dd"); date mydate = formatter.parse(date); java.sql.date sqldate = new java.sql.date(mydate.gettime()); db.insert_date(sqldate); make sure db.insert_date accepts java.sql.date.
where have call preparedstatement.setdate() function.
see related question java.util.date vs java.sql.date.
Comments
Post a Comment