Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16492978
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:47:46

下载本文示例代码
相关专区 ·初学者专区 ·高级技术 ·图像与多媒体 ·网络编程 ·Java开源 ·Eclipse ·EJB开发  ·设计模式 精彩专题 ·Java6新功能 ·Borland传奇 ·JBuilder05 ·EJB 3.0 ·Servlet API ·JDBC入门讲座 主题社区 ·Java源码 ·Java  概述  在设计库表时,经常会碰到用于保存"时间值"的字段,如create_date,begin_time,login_time等,举不胜举。针对这些类型的字段,在设置数据类型时,有一个有趣的现象,即其中一些人使用Date类型,而另外一些人使用Char(8)/Char(14)类型。一般而言,初学者,在校学生,甚至老师一般都属于前者,他们一个鲜明的特征是对数据库的理论掌握很好,但普遍缺少实际项目的开发经验;而后者一般是那些有一定项目经验的开发人员。乍一看,这些时间值字段,用Date类型应该是合情合理,天经地义的,为什么有一定项目经验的人偏偏要这样"弃暗投明",这样"特立独行"呢?  这是典型的白猫黑猫问题,理论化的东西很光鲜,但有时在实践中就是不灵光,而一些"旁门左道"的东西却显得更加方便易用。本文将通过一个具体例子的不同开发过程,分析Char类型时间字段为什么在实践中更受欢迎。考虑到篇幅所限,我们仅对Date类型和Char(8)类型的时间值字段作比较分析,对于Date类型和Char(14)类型的分析,相信大家完全可以由此而及彼。  1、比较的例子  我们设计了一个具体的实例,对用Char类型和Date类型的日期进行比较分析,使用的是Oracle数据库,现对该实例进行简单的描述。  假设有一个T_USER表,有一个EXPIRE_DATE(过期日期)字段,要求记录年、月、日的日期数据,对EXPIRE_DATE字段分别采用两种实现方式: 图 1 T_USER表  左边的T_USER(1)使用CHAR(8)保存日期值,以yyyymmdd格式保存,如20070606,20070501;而右边的T_USER(2)使用Date数据类型,我们称左边的数据表设计为CHAR类型日期方案,而右边的设计为DATE类型日期方案。  表中的数据当然不会生而有之,我们假设从Web的表单上提交上来,保存到表中,当然还要有查询、统计等操作,我们就通过这些常见的数据操作分析这两个方案的不同,通过这样的分析,孰劣孰优,相信我们就可以进行很好的判断了。 软件频道精品推荐 更多精彩点击体验>>共5页。 1 2 3 4 5 : 相关专区 ·初学者专区 ·高级技术 ·图像与多媒体 ·网络编程 ·Java开源 ·Eclipse ·EJB开发  ·设计模式 精彩专题 ·Java6新功能 ·Borland传奇 ·JBuilder05 ·EJB 3.0 ·Servlet API ·JDBC入门讲座 主题社区 ·Java源码 ·Java  概述  在设计库表时,经常会碰到用于保存"时间值"的字段,如create_date,begin_time,login_time等,举不胜举。针对这些类型的字段,在设置数据类型时,有一个有趣的现象,即其中一些人使用Date类型,而另外一些人使用Char(8)/Char(14)类型。一般而言,初学者,在校学生,甚至老师一般都属于前者,他们一个鲜明的特征是对数据库的理论掌握很好,但普遍缺少实际项目的开发经验;而后者一般是那些有一定项目经验的开发人员。乍一看,这些时间值字段,用Date类型应该是合情合理,天经地义的,为什么有一定项目经验的人偏偏要这样"弃暗投明",这样"特立独行"呢?  这是典型的白猫黑猫问题,理论化的东西很光鲜,但有时在实践中就是不灵光,而一些"旁门左道"的东西却显得更加方便易用。本文将通过一个具体例子的不同开发过程,分析Char类型时间字段为什么在实践中更受欢迎。考虑到篇幅所限,我们仅对Date类型和Char(8)类型的时间值字段作比较分析,对于Date类型和Char(14)类型的分析,相信大家完全可以由此而及彼。  1、比较的例子  我们设计了一个具体的实例,对用Char类型和Date类型的日期进行比较分析,使用的是Oracle数据库,现对该实例进行简单的描述。  假设有一个T_USER表,有一个EXPIRE_DATE(过期日期)字段,要求记录年、月、日的日期数据,对EXPIRE_DATE字段分别采用两种实现方式: 图 1 T_USER表  左边的T_USER(1)使用CHAR(8)保存日期值,以yyyymmdd格式保存,如20070606,20070501;而右边的T_USER(2)使用Date数据类型,我们称左边的数据表设计为CHAR类型日期方案,而右边的设计为DATE类型日期方案。  表中的数据当然不会生而有之,我们假设从Web的表单上提交上来,保存到表中,当然还要有查询、统计等操作,我们就通过这些常见的数据操作分析这两个方案的不同,通过这样的分析,孰劣孰优,相信我们就可以进行很好的判断了。 软件频道精品推荐 更多精彩点击体验>>共5页。 1 2 3 4 5 : 下载本文示例代码


浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型浅析J2EE应用中的时间值字段的数据类型
阅读(208) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~