将 varchar 值转换为 JDBC 数据类型 DATE 时发生错误。

问题是:


我是这样解决的  :

网上的 转型方法 并不好使 ,我想了想 可能是由于返回值是String  我



就成功的解决错误了  。。下面是关于原理的讲解肯定方法不唯一   至于错误,的产生,这个肯能和数据库  myeclpise 之间的接口有关系 ,数据存储来回转换。这就当一个经验,有这个函数 ,以后项目有错误就这样解决。学以致用嘛,嘿嘿


java和数据库之间的日期和时间转换

第一种:

Date time= new java.sql.Date(new java.util.Date().getTime());

第二种:

java 用PreparedStatement来setDate,用问号的形式给日期问号赋值

pstmt.setTimestamp(8new Timestamp(System.currentTimeMillis()));  

pstmt.setDate(1, new java.sql.Date(date1.getTime()));
pstmt.setDate(2, new java.sql.Date(date2.getTime()));

第三:

 

 

其实向mysql数据库里插入时间字段也是很容易的,只要设置为java.util.Date类型后,以Hibernate的Pojo类对象为例,pojo.set(new java.util.Date());就可用了。

 

 

以下附录在网上找到的相关资料:

Mysql 与 java 的时间类型 
           MySql的时间类型有             Java中与之对应的时间类型
                 date                                              java.sql.Date
             Datetime                                       java.sql.Timestamp
            Timestamp                                     java.sql.Timestamp
            Time                                             java.sql.Time
            Year                                              java.sql.Date
于是便通过以下方式去实现:
           Date date = new Date();//获得系统时间.
          String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);//将时间格式转换成符合Timestamp要求的格式.
          Timestamp goodsC_date = Timestamp.valueOf(nowTime);//把时间转换

java.util.Date   是java.sql.Date的父类

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中常用的数据类型包括: 1. byte:字节型,范围为-128~127。 2. short:短整型,范围为-32768~32767。 3. int:整型,范围为-2147483648~2147483647。 4. long:长整型,范围为-9223372036854775808~9223372036854775807。 5. float:单精度浮点型,范围为-3.4028235E38~3.4028235E38。 6. double:双精度浮点型,范围为-1.7976931348623157E308~1.7976931348623157E308。 7. boolean:布尔型,只有两个取:true或false。 8. char:字符型,表示一个字符,范围为0~65535。 JDBC是Java Database Connectivity的缩写,是Java语言访问关系型数据库的统一接口。JDBC提供了一种通用的方法来访问不同的数据库,因此可以通过JDBC连接MySQL、Oracle、高斯数据库等不同的数据库。 JDBC中的数据类型与MySQL、Oracle、高斯数据库的数据类型对应关系如下: | JDBC数据类型 | MySQL数据类型 | Oracle数据类型 | 高斯数据库数据类型 | |--------------|--------------|----------------|---------------------| | boolean | BIT | NUMBER(1) | BOOL | | byte | TINYINT | NUMBER(3) | INT1 | | short | SMALLINT | NUMBER(5) | INT2 | | int | INTEGER | NUMBER(10) | INT4 | | long | BIGINT | NUMBER(19) | INT8 | | float | FLOAT | FLOAT(24) | FLOAT4 | | double | DOUBLE | FLOAT(53) | FLOAT8 | | BigDecimal | DECIMAL | NUMBER | DECIMAL | | String | VARCHAR | VARCHAR2 | VARCHAR | | Date | DATE | DATE | DATE | | Time | TIME | TIMESTAMP | TIME | | Timestamp | DATETIME | TIMESTAMP | TIMESTAMP | | Clob | TEXT | CLOB | TEXT | | Blob | BLOB | BLOB | BYTEA | 需要注意的是,不同的数据库所支持的数据类型可能会有所不同,因此在使用JDBC连接数据库,需要根据具体的数据库进行相应的类型转换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值