0

我正在创建一些可以视为电子表格的东西,尽管它有很多不同之处。每列代表对象表中的一个对象。

对象表:

  • id: 主键 int
  • 名称:varchar

每行代表一个动作表中的一个动作

动作表:

  • id: 主键 int
  • 动作类型:tinyint

这两个有一个多对多的链接表,可以看作是单元格。每个非空单元格中都有一个条目。

ObjectsActions-表

  • objectId:外键整数
  • actionId:外键整数
  • 价值: ?

每个动作都有一个 actionType 属性。对于大多数类型,所有单元格都将包含整数值。但是有一些它们也将包含字符串。

这就是我的问题所在。我意识到这可能很难回答,而且很多事情都在起作用。但也许有一些大的禁忌或一般的经验法则之类的。ObjectsActions-Table 的值属性的数据类型应该是什么

选项 1. 它们应该是 varchar 类型吗?当使用期望整数值的 actionType 获取行(动作)的单元格值时,应将每个字符串转换为 int。

选项 2.让类型为二进制是否明智?(sqlce“二进制”类型)?我想我可以这样让每个整数占用更少的空间?

选项 3.我应该有两个(或更多)ObjectsActions-Tables 吗?一个用于字符串,一个用于 int?那么在将 Actions-Table 与 ObjectsActions-tables 连接时,我们首先检查操作类型,然后再与适当的表连接?

4

0 回答 0