个人记事,留下点滴
月度归档: <span>2014 年 6 月</span>
月度归档: 2014 年 6 月

execute相关的一些常识

execute、executeUpdate、executeQuery三者的区别(及返回值)


  1. ResultSet executeQuery(String sql); 执行SQL查询,并返回ResultSet 对象。
  2. int executeUpdate(String sql); 可执行增,删,改,返回执行受到影响的行数。
  3. boolean execute(String sql); 可执行任何SQL语句,返回一个布尔值,表示是否返回ResultSet 。
  4. execute是executeQuery和executeUpdate的综合.

具体使用方法,大概如下所述

executeUpdate() 这是 PreparedStatement 接口中的方法

executeUpdate(String sql) 这是 PreparedStatement 从父接口 Statement 中继承过来的方法

executeUpdate() 中执行 SQL 语句需要在创建 PerparedStatement 时通过 Connection 的 prepareStatement(String sql) 方法中写出,因为 PerparedStatement 中的 SQL 语句数据库需要进行预编译和缓存,因此要在创建 PerparedStatement 对象时给出 SQL 语句。

而 executeUpdate(String sql) 是 Statement 中的方法,参数中的 SQL 语句只是提交给数据库去执行,并不需要预编译。

如果 SQL 语句中有 ? 占位符,那么在设置好占位符中的值后,必须使用 executeUpdate() 执行。而 executeUpdate(String sql) 只是提交一个 SQL 语句,且这个语句中不能带有 ? 占位符

executeUpdate(sql)的返回值是更新的条数


关于时间转换的代码

时间转换的相关代码

public static long dateToLong (String in) {
// 将日期转成毫秒 yyyy-MM-dd HH:mm:ss 2014-5
SimpleDateFormat format = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

// String systimeString =com.alipay.util.UtilDate.getDateFormatter();
java.util.Date date2;
Calendar cal = Calendar.getInstance();
try {
date2 = format.parse(in);
cal.setTime(date2);

} catch (ParseException e) {
e.printStackTrace();
}

return cal.getTimeInMillis();
}
// 将毫秒转成日期 yyyy-MM-dd HH:mm:ss 2014-5
public static String longToDate (long in) {
SimpleDateFormat format = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(in);

String dateString = format.format(calendar.getTime());
// System.out.println(“longToDate: long:”+ in +” date:”+ dateString);
return dateString;

}