我正在处理由另一个暴发程序开发的应用程序,并且通过使用char字段而不是
数据库中的所有布尔列来混淆.它使用“Y”为真,“N”为假(这些必须为大写).然后,类型
名称本身就有一些像ybln这样的晦涩的名字.
这是非常烦人的工作,由于很多原因,其中最不重要的是,它只是看起来彻底美观不悦.
但也许它的我很愚蠢 – 为什么会有人这样做?这是一个数据库兼容性问题还是一些我不知道的设计模式?
任何人都可以启发我吗?
我经常在旧
数据库模式中看到这种做法.我看到的一个优点是,使用CHAR(1)字段提供对Y / N选项的
支持,如“是”,“否”,“可能”.
其他海报提到Oracle可能已被使用.我所提到的模式实际上部署在Oracle和sql Server上.它将数据类型的使用限制在两个平台上可用的公共子集.
他们在Oracle和sql Server之间的一些地方确实分歧,但是在大多数情况下,它们在数据库之间使用了一个共同的架构,以最小化支持这两个DB所需的开发工作.