我有两个不同的实体类型,由字符串标识。我想编写一个SQL数据库来存储两个元素之间的关系,每个元素都有一个。
我不需要存储有关元素本身的任何信息,只需存储其标识符,因此我想编写一个SQL表,其中包含两个字符串(相关元素的标识符)作为主键。
我已阅读Strings as Primary Keys in SQL Database并且我不确定将两个字符串作为表的主键是否是个好主意。
另一种选择是在一个表中存储一种类型实体的标识符,在另一个表中存储另一种类型的标识符,然后我的“关系”表将有两个整数作为主键...但它会让我重新编写程序的持久性部分......
欢迎提出所有建议
答案 0 :(得分:2)
在数据库中使用两个字符串作为键时,没问题。没有必要为了得到整数键而经历所有麻烦,因为它在技术上可能更快。这基本上也是凯文在你所链接的问题的选定答案中所说的。