java中有date和datetime,mysql中也有date和datetime,这里我们来说说mysql中的date和datetime。
成都创新互联长期为上1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为嘉峪关企业提供专业的网站设计制作、成都网站制作,嘉峪关网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
1 mysql中的date和datetime
1.1 DATETIME
类型可用于需要同时包含日期和时间信息的值。MySQL 以:
‘YYYY-MM-DD HH:MM:SS’
格式检索与显示 DATETIME 类型。支持的范围是:
‘1000-01-01 00:00:00’
到
‘9999-12-31 23:59:59’。
(“支持”的含义是,尽管更早的值可能工作,但不能保证他们均可以。)
1.2 DATE
类型可用于需要一个日期值而不需要时间部分时。MySQL 以
‘YYYY-MM-DD’
格式检索与显示DATE值。支持的范围则是
‘1000-01-01’
到
‘9999-12-31’。
2 与java数据的交互
能看出来mysql中的date和datetime区别还是挺大的,date没有保存时间。但是java中的date(java.util.Date)记录的还是挺细的,日期和时间都可以记下来,那么现在问题来了,如果想在mysql中存储日期和时间,也就是用datetime,而在数据中应该如何对应呢?
我使用hibernate测了一下,发现当把mysql数据库中设置了datetime,反向工程生成的hbm.xml文件中,使用的是timestamp,如下:
property name="Publishdate" column="publishdate" type="timestamp" not-null="false" length="10" /1
反向生成java的pojo时,生成的还是Date。
由此可见对于mysql中datetime,与java中的date,如果要使二者正确交互,中间要使用timestamp。
如果要在JAVA中直接插入MySql的datetime类型,则可以使用:
Date date = new Date();
Timestamp timeStamp = new Timestamp(date.getTime());12
再用setTimestamp()设置数据库中的“日期+时间”。
这样放入数据库的就是“yyyy-mm-dd hh:mm:ss”格式的数据。
注意,mysql中如果使用date而不是datetime是保存不下“日期+时间”的,只能保存“时间”。
插入数据库的方法。如下参考:
1.首先,打开SQLserver管理系统工具,使用数据库帐号登录到数据管理系统。
2.输入后,单击数据库文件副本前面的+号。
3.然后右击数据库文件夹,选择“新知识数据库”。
4.然后创建一个名为test的数据表。
5.建立完成后,在下面的编辑器中输入下图中的代码,然后单击run。
6.运行之后,您可以看到测试表插入了一个空记录,这样就完成了。如下图所示。
MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。、
向mysql插入指定时间步骤有:
1:mysql在插入时间的时候 要进行格式转换
例如: insert into users(birth) values(STR_TO_DATE('" + alarmDefi.getEndTime()+ "','%Y-%m-%d %k:%i:%s')) ;
这样就可插入:年-月-日 时:分:秒
你好啊。我又来了 NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。
CURDATE()以’YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE字段中。
CURTIME()以’HH:MM:SS’的格式返回当前的时间,可以直接存到TIME字段中。
例:insert into tablename (fieldname) values (now())