insert แต่ละวันลงไปไปใน sql ยกตัวอย่างเช่น ผมการลางานวันที่ 10-15 แต่ผม insert ได้เพียงเเค่ วันที่ 10กับ 15 คือผมต้องการจะ insert วันที่11 12 13 14 ลงไปด้วย ต้องใช้วิธีไหนไหนการทำครับ
สอบถามหน่อยครับ คือผมต้องการจะ insert แต่ละวันลงไปไปใน sql
ยกตัวอย่างเช่น ผมการลางานวันที่ 10-15 แต่ผม insert ได้เพียงเเค่ วันที่ 10กับ 15
คือผมต้องการจะ insert วันที่11 12 13 14 ลงไปด้วย ต้องใช้วิธีไหนไหนการทำครับ
นี่คือโค๊ดที่ผมทำครับ
Code
public String ConfirmVacation (String persNo, String calendaFrom, String radioSelectedFrom, String lastUpdateBy, String calendaTo, String radioSelectedTo) throws Exception {
logger.debug("persno =" + persNo);
logger.debug("calendaFrom =" + calendaFrom);
MysqlDbConnection connect = new MysqlDbConnection();
connection = connect.getDBConnection();
connection.setAutoCommit(false);
String ConfirmVacationAllDay ="";
PreparedStatement statementAllDay1 = null;
PreparedStatement statementAllDay2 = null;
String result ="";
try {
DateFormat format = new SimpleDateFormat("yyyy-MM-dd",
Locale.ENGLISH);
java.sql.Date dtFromDate = new java.sql.Date(format.parse(
calendaFrom).getTime());
java.sql.Date dtToDate = new java.sql.Date(format.parse(calendaTo)
.getTime());
DateTime jdFromDate = new DateTime(dtFromDate);
DateTime jdToDate = new DateTime(dtToDate);
DateTime jdTemDate = jdFromDate;
System.out.println("jdTemDate" + jdTemDate);
System.out.println("jdToDate" + jdToDate);
System.out.println("plusDays" + jdTemDate.plusDays(1));
for (int i = 0; !jdTemDate.isEqual(jdToDate); i++) {
logger.debug(jdTemDate);
System.out.println("INSERT jdTemDate = " + jdTemDate);
// jdTemDate.plusDays(1);
jdTemDate = jdTemDate.plusDays(1);
}
// Last DAY
if (jdTemDate.isEqual(jdToDate)) {
System.out.println("INSERT jdTemDate = " + jdTemDate);
}
ConfirmVacationAllDay = "INSERT INTO request_vacation (pers_No, vacation_date, vacation_from, request_date, last_update_date, last_update_by) " +
"VALUES (?, ?, ?, CURRENT_DATE(),CURRENT_DATE(),? )";
int i = 1;
statementAllDay1 = connection.prepareStatement(ConfirmVacationAllDay);
statementAllDay1.setString(i++, persNo);
statementAllDay1.setDate(i++, dtFromDate);
statementAllDay1.setString(i++, radioSelectedFrom);
statementAllDay1.setString(i++, lastUpdateBy);
statementAllDay1.executeUpdate();
int j = 1;
statementAllDay2 = connection.prepareStatement(ConfirmVacationAllDay);
statementAllDay2.setString(j++, persNo);
statementAllDay2.setDate(j++, dtToDate);
statementAllDay2.setString(j++, radioSelectedTo);
statementAllDay2.setString(j++, lastUpdateBy);
statementAllDay2.executeUpdate();
result = "success";
connection.commit();
} catch (SQLException e) {
connection.rollback();
result = "fail";
e.printStackTrace();
throw e;
} catch (Exception e) {
connection.rollback();
result = "fail";
e.printStackTrace();
throw e;
}finally{
//statementAllDay1.close();
//statementAllDay2.close();
connection.close();
}
return result ;
}
}
Tag : Java, JavaScript, Ajax, jQuery, JAVA
Date :
2018-04-18 10:29:25
By :
2112558112311923
View :
2007
Reply :
2
sql ตอน insert ครับ
Date :
2018-04-18 10:46:09
By :
2112558112311923
DateFormat format = new SimpleDateFormat("yyyy-MM-dd",
Locale.ENGLISH);
java.sql.Date dtFromDate = new java.sql.Date(format.parse(
calendaFrom).getTime());
java.sql.Date dtToDate = new java.sql.Date(format.parse(calendaTo)
.getTime());
for (LocalDate date = dtFromDate; date.isBefore(dtToDate); date = date.plusDays(1))
{
...//insert เด้อ
statementAllDay2 = connection.prepareStatement(ConfirmVacationAllDay);
statementAllDay2.setString(j++, persNo);
statementAllDay2.setDate(j++, date);
statementAllDay2.setString(j++, radioSelectedTo);
statementAllDay2.setString(j++, lastUpdateBy);
statementAllDay2.executeUpdate();
}
connection.commit();
Date :
2018-04-26 15:49:32
By :
บัญดิษฐ
Load balance : Server 02