1

我有网页中显示的产品列表。

每个产品都由数据库中的唯一产品 ID 标识。

最初,当页面加载时,它会在每个产品下显示为勾选和交叉(图 1)

一旦用户单击特定产品的刻度符号,我会将其显示为感兴趣(图 2)

当用户单击特定产品的十字符号时,我会将其显示为不感兴趣(图 3)

每次页面加载时,我都应该通过存储用户感兴趣的用户名和 productId 来加载用户最后选择的首选项。

当只有两种状态用户可能感兴趣或不感兴趣时​​,这仍然很简单,因为我会将所有感兴趣的 ProductaId 存储在 DB 中并使用它们来加载用户首选项。也就是说,我将为所有 ProductId 应用感兴趣的类对于所有不在数据库中的 Id,在 DB 和 NotInterested 类中。

现在第三种状态是用户从未接触过的状态——Image1。

我已经有一个如下所示的数据库表

  创建表用户首选项(
      用户 ID INT,
      感兴趣的_ProductsId VARCHAR(150)
  );

我将 Interested_ProductsId 存储为 CSV 产品 ID(即)5、75、2、15 都是产品 ID

现在我的问题是是否可以在 CSV 中实现第三个状态(Image1)。我只存储客户感兴趣的 ProductsId。如何实现客户不感兴趣的 ProductsId(Image3)并且客户从未点击过(Image1)。

提前致谢

4

1 回答 1

0

是的,这是可能的:引入一个新列:

Type tinyint not null
CHECK (Type in (1, 2, 3))

并将类型定义为您的三种状态之一。

您可以将任意数据与连接表项相关联。您基本上以这种方式将它们提升为“实体”。

于 2012-08-17T11:00:38.277 回答