【问题标题】:what is the best way color store in sql在sql中颜色存储的最佳方式是什么
【发布时间】:2016-09-13 05:51:26
【问题描述】:

我不确定哪个是 sql 中颜色存储的最佳选择

我可以执行 3 种颜色名称,十六进制颜色代码,RGB 颜色代码。颜色的数据类型是什么。

请建议我使用 Asp.net MVC 和 sql 2012 从事电子商务方面的工作。我需要存储产品颜色。

【问题讨论】:

  • 你想做什么?商店产品颜色?如果是这样,那必须是字符串(varchar),如“黑色”、“白色”、“蓝色”........
  • 您要存储产品颜色?那么您甚至会知道相关的 HTML 颜色代码吗?还是说产品具有“覆盆子红”、“红白格子”、“金棕色”之类的颜色?也许您可以有“红色”、“白色”、“棕色”、“金色”等类别,并为每个产品附加一个或多个。也许是主色和副色?加上一个读起来不错的附加彩色文本?有很多需要考虑。
  • @NazmulHasan 我需要存储产品颜色! .哪一个最好?
  • @ThorstenKettner 可能与 html 颜色代码无关。导致消费者不理解十六进制颜色代码或 RGB 颜色代码。所以我该怎么办请建议我:)

标签: html sql asp.net asp.net-mvc-4 colors


【解决方案1】:

如果您想在 html 中存储颜色代码,请使用输入类型 color 在数据库中存储颜色。

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

【讨论】:

  • 我需要存储产品颜色! .哪一个最好?
【解决方案2】:

如果您仅使用 0xRRGGBB 格式,而不是在数据库中存储整数并在您想要选择时使用 rehexidecimal。或者如何在数据库中存储值取决于它。

【讨论】:

    【解决方案3】:

    您可能需要一个包含 20 种颜色的颜色表,客户可以使用它来过滤产品。

    这是一个相当简单的数据库设计,其中产品具有各种颜色:

    表格颜色 - 这些是用于过滤的通用颜色

    • color_id
    • color_name - 例如“红色”,可用于在过滤器选项中显示的文本
    • color_code - 例如#FF0000,一种可用于在过滤器选项中显示的颜色

    餐桌产品 - 产品(无论其颜色如何)

    • product_id
    • product_description

    table product_color - 产品的颜色;这些是实际订购的商品

    • product_id
    • color_id
    • color_name,产品特定的,例如'深红色'
    • 价格

    (当产品也有各种尺寸时,这可能会变得更加复杂。)

    【讨论】:

      猜你喜欢
      • 2019-02-28
      • 2011-01-02
      • 2013-06-14
      • 1970-01-01
      • 2014-06-29
      • 2021-10-22
      • 1970-01-01
      • 1970-01-01
      • 2019-10-21
      相关资源
      最近更新 更多