我的建议是,数据库中不要用日期类型,用字符型。
java将日期转化成指定的格式的字符串后,再保存到数据库中。
这样,不依赖数据库,也不依赖 *** 作系统。(不同的数据库,不同的 *** 作系统日期表示可能不同。)
数据库表中字段类型有二进制数据类型、字符数据类型、数字数据类型 等其中类型。具体类型如下所示:
1、二进制数据类型
Binary、Varbinary、Image
2、字符数据类型
Char,Varchar和 Text
3、Unicode数据类型
包括Nchar,Nvarchar和Ntext
4、日期和时间数据类型
包括Datetime, Smalldatetime, Date, TimeStamp
5、数字数据类型
数字数据类型包括正数和负数、小数和整数
6、货币数据类型
表示正的或者负的货币数量。
7、特殊数据类型
特殊的数据类型有3种,即Timestamp、Bit 和 Uniqueidentifier。
以目前三大主流数据库oracle,mysql,sqlserver分别说明。
如果是oracle,需要用to_date函数将字符型数据转换,插入到数据库的日期型数据中。
如:
create table test(cdate date);
insert into test values (to_date('2015-08-13','yyyy-mm-dd'));
commit;
如果是mysql或者sqlserver,可直接以字符形式插入,数据库会自动将字符转成日期。
create table test(cdate datetime);
insert into test values ('2015-08-13');
需要注意:oracle中插入后需要commit(提交),否则在关闭当前会话后,插入是不成功的。
就是在插入、修改该字段时,把它当成一个字符串格式传进去就行啊!~
如:
insert
into
table1(id,datetime1)
values(11,'2007-5-26')
或
update
table1
set
datetime1='2007-5-26'
在数据库取出来的时候就转换好
select getdate()
2006-05-12 11:06:08177
我整理了一下SQL Server里面可能经常会用到的日期格式转换方法:
举例如下:
select Convert(varchar(10),getdate(),120)
2006-05-12
select CONVERT(varchar, getdate(), 120 )
2006-05-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
20060512110608
select CONVERT(varchar(12) , getdate(), 111 )
2006/05/12
select CONVERT(varchar(12) , getdate(), 112 )
20060512
select CONVERT(varchar(12) , getdate(), 102 )
20060512
其它几种不常用的日期格式转换方法:
select CONVERT(varchar(12) , getdate(), 101 )
0612/2005 select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004
select CONVERT(varchar(12) , getdate(), 104 )
12052006
select CONVERT(varchar(12) , getdate(), 105 )
12-05-2006
select CONVERT(varchar(12) , getdate(), 106 )
12 05 2006
select CONVERT(varchar(12) , getdate(), 107 )
05 12, 2006
select CONVERT(varchar(12) , getdate(), 108 )
11:06:08
select CONVERT(varchar(12) , getdate(), 109 )
0512 2006 1
select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004
select CONVERT(varchar(12) , getdate(), 113 )
12 052006
select CONVERT(varchar(12) , getdate(), 114 )
11:06:08177
以上就是关于关于Java中时间的处理,我数据库中的字段是dateTime类型的,我在Java中声明字段的类型全部的内容,包括:关于Java中时间的处理,我数据库中的字段是dateTime类型的,我在Java中声明字段的类型、数据库中字段类型有哪些、如何插入时间日期型数据在数据库里等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)