数据库标志位字段用CHAR(2)还是INT的困惑?

sotier 2008-04-18 09:45:22
数据库表里有一个字段是标志位,该字段只存0或1,请问该字段用什么类型好?为什么?

CHAR(1)
CHAR(2)
INT

先谢了!

-------------------
我们一直在努力!
...全文
749 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
doer_ljy 2008-04-18
  • 打赏
  • 举报
回复
不见得吧?
oracle本身支持隐式的类型转换,所以从oracle上看操作都不复杂。
如果说是应用程序开发的复杂度的话,我想要因语言而异了。
总体说从性能的角度分析,个人还是偏向和使用char
因为char(1)明显的空间使用比int小很多。
ggy11687 2008-04-18
  • 打赏
  • 举报
回复
No. 英文名 中文名 类型 长度 必须项 Default Comment
12 invalid_flag 作废标志 char 1 Y 0 (作废标志 0-未作废 1-已作废 )

给你看一个例子就好了,波司登的erp系统使用的数据定义。
sotier 2008-04-18
  • 打赏
  • 举报
回复
但有人说用INT好,理由是操作起来方便。
doer_ljy 2008-04-18
  • 打赏
  • 举报
回复
如果有默认值使用char(1)比较好,系统占用较小(与char(2)和int相对而言)。
如果没有默认值,也可以使用varchar2(1)。
sotier 2008-04-18
  • 打赏
  • 举报
回复
恩 4楼分析的有道理,稍后结贴……

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧