【工作问题】Orcale数据库中保存时间到底用varchar还是Date?

【工作问题】Orcale数据库中保存时间到底用varchar还是Date?

近日工作中和DBA(姑且算是)发生了争论。起因是我建数据库的时候时间字段全部设为了Date类型,但DBA坚持要使用varchar(string)类型来保存时间。
那么到底谁对呢?来看下对比

Date类型存时间的好处如下:

  • 存储空间:Date类型只占用7个字节
  • 索引效率
  • 函数运算:比较,排序
  • 插入或更新数据时,Date可设为默认插入或更新为当前时间
  • 多语言,跨区域的时候,格式和时区根据登录用户不同需要转化为不同的显示格式

varchar类型存时间的好处如下:

  • 格式固定
  • 不同的数据库间移置

在涉及多个数据库或多种语言时,存为字符串类型优于date,问题是是否有这种迁移的预期和必要性。在其他情况下,我觉得都是Date类型优先的。

但实际工作中,还是听领导的吧。。。。

你可能感兴趣的:(MySQL)