【问题标题】:Store CSS color values in DB在数据库中存储 CSS 颜色值
【发布时间】:2012-11-17 16:12:48
【问题描述】:

我需要将 CSS HEX 颜色值(例如#FFFFFF)存储到 mysql 数据库中。

我会使用哪种类型的数据,为什么它比使用另一种更好?

【问题讨论】:

  • 你的措辞就像一道考试题。 我会使用哪种类型的数据,为什么使用另一种会更好?

标签: mysql types sqldatatypes


【解决方案1】:

如果列不为空,则使用不带#char(6) 保存颜色...如果该列可以为空,则使用 varchar(6) 来节省大小

【讨论】:

    【解决方案2】:

    如果你关心磁盘空间,你应该使用BINARY(3)

    此答案用于高级用途,与大多数开发人员无关(接受的答案很好)。 我在这里发帖是因为这是 Google 上的第一个结果。

    在可维护性和磁盘空间之间进行权衡。 css hex表示的颜色,即#f8f8f8也可以表示为BINARY(3)

    BINARY(3) 的困难在于您必须将十六进制字符串来回转换为二进制。您可以使用 HEX() 和 UNHEX() 来做到这一点,但任何维护您的数据库的人都需要了解二进制类型,如果他们想进行更改。很容易低估这会给未来的开发者带来的问题。

    不过,使用BINARY(3) 也有好处。 #f8f8f8 保存到磁盘的数据如果保存为CHAR(6),则为101010101011100011010001110101001001111111110,如果保存为BINARY(3),则为111110001111100011111000

    【讨论】:

    • 感谢您让互联网保持最新状态!我们需要更多像你这样的人。
    猜你喜欢
    • 2010-10-21
    • 2013-08-14
    • 1970-01-01
    • 2014-12-05
    • 2016-09-01
    • 2012-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多