oracle mybatis DATE无法存时分秒

<sql id="sys_sms_id">SYS_SMS_ID.NEXTVAL</sql>
<insert id="save" parameterType="SmsDO">
		insert into SYS_SMS
		(
			ID,
            PHONE,
            CODE,
            SENDDATE
		)
		values
		(
			<include refid="sys_sms_id"/>,
			#{phone,jdbcType=VARCHAR},
			#{code,jdbcType=VARCHAR},
			#{sendDate,jdbcType=DATE}
		)
	</insert>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

在将时间存到oracle里面的时候发现怎么都无法将带时分秒的日期存进去,每次存只能存到年月日。 结果发现在mybatis里面设置传参的jdbcType=DATE的话就会出现问题。 所以改为

<sql id="sys_sms_id">SYS_SMS_ID.NEXTVAL</sql>
<insert id="save" parameterType="SmsDO">
		insert into SYS_SMS
		(
			ID,
            PHONE,
            CODE,
            SENDDATE
		)
		values
		(
			<include refid="sys_sms_id"/>,
			#{phone,jdbcType=VARCHAR},
			#{code,jdbcType=VARCHAR},
			#{sendDate}
		)
	</insert>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

2018-05-30更新 当使用的数据库为oracle时,时间类型全部使用TIMESTAMP,即

```

SYS_SMS_ID.NEXTVAL insert into SYS_SMS ( ID, PHONE, CODE, SENDDATE ) values ( , #{phone,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, #{sendDate,jdbcType=TIMESTAMP} )


DATE在oracle中只能存储年月日,TIMESTAMP可以存储到时分秒,所以在使用的时候全部换成TIMESTAMP
1
上次更新: 2024-11-06, 19:27:10
最近更新
01
java playwright爬虫
11-06
02
连接chrome调试
07-23
03
连接chrome调试
07-23
更多文章>