Java jdbc 连接 sqlserver

1.描述

Java jdbc连接 sqlserver数据库注意事项

返回 sqlserver date,datetime 数据类型处理

Caused by: java.lang.IllegalArgumentException
    at java.sql.Date.getHours(Date.java:187)

2.方法

2.1 sqlserver驱动加载

2006以下

         驱动:  com.microsoft.jdbc.sqlserver.SQLServerDriver

                             sqljdbc.jar

         加载驱动方式:

 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

2006以上

                 驱动: com.microsoft.sqlserver.jdbc.SQLServerDriver

                             sqljdbc42.jar

                加载驱动方式:

 try {
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
     } catch (InstantiationException e) {
     		e.printStackTrace();
     } catch (IllegalAccessException e) {
     		e.printStackTrace();
     }

2.2 sqlserver 日期字段处理(Caused by: java.lang.IllegalArgumentException
    at java.sql.Date.getHours(Date.java:187)  报错处理)

date:(年-月-日)

		if (rs.getObject(i) instanceof Date) {// SQL server 字段类型为 date
			if (null == rs.getObject(i)) {
				value = null;
			} else {
				String dateStr = "";
				SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
				String ss = String.valueOf(rs.getObject(i));
				java.util.Date date = format.parse(ss);// 字符串时间转为时间格式
				dateStr = format.format(date);// 时间类型格式化为字符串格式
				value = dateStr;
			}
		}

datetime:(年-月-日 时:分:秒.毫秒)

		if (rs.getObject(i) instanceof Timestamp) {// sqlserver 字段类型为 datetime
			if (null == rs.getObject(i)) {
				value = null;
			} else {
				String dateStr = "";
				SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
				String ss = String.valueOf(rs.getObject(i));
				java.util.Date date = format.parse(ss);// 字符串时间转为时间格式
				dateStr = format.format(date);// 时间类型格式化为字符串格式
				value = dateStr;
			}
		}

3.注意

SQLserver  日期处理不能和 oracle 通用   oracle 日期类型都是 data

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值