在数据库中存储多个项目设置

时间:2015-06-07 01:24:31

标签: mysql database-design database-schema

我正在建立一个画廊。每个图像都是一行,包含名称和src以及顺序等。

我希望每张图片还有3个选项:精选,可见,已禁用。

我应该将这些作为列吗?

或者只有1列设置并存储3个二进制数?

例如:

111 =精选,可见,已禁用

110 =精选,可见

010 =可见

001 =已停用

或者我甚至可以将其转换为DEC并简单地存储0到7(如CHMOD样式)

最好的方法是什么?

谢谢!

2 个答案:

答案 0 :(得分:2)

依赖。只有口袋保护器的程序员正在查看数据和应用程序代码?我是复杂的,但我会说春天有点开销。此外,尽管付出了巨大的努力,我还没有在mysql中进行逐位搜索

按位搜索的问题,请参阅this

答案 1 :(得分:0)

如果你问如何在MySQL中存储/操作......

  • SET ('Featured', 'Visible', 'Disabled')
  • TINYINT UNSIGNED并进行算术运算;见1 << 2给你4; 0x4是一种用十六进制表示文字4的方法; a | b是按位OR等。