drupal和多个主键

时间:2011-04-03 07:48:05

标签: drupal drupal-6

我已经定义了一个新的内容类型“statetype”和一个cck字段“state”。 我需要状态字段作为此表中的主键,因为我有另一个表,我需要状态字段作为外键。 (此代码和表格不是drupal,我自己编写但与drupal表相关) 所以我应该在“statetype”表中将状态字段更改为主键,但是drupal已将此表中的vid字段定义为主键。  如果我定义多个主键(vid,state)或者删除vid主键?

有什么问题吗?

1 个答案:

答案 0 :(得分:0)

使用具有业务含义的db字段作为主键/外键永远不是一个好主意。您应该始终使用某种id字段来执行此操作。如果您不遵守此规则,一旦您的业务发生变化,您将遇到麻烦。然后你必须迁移主键,这比更改和迁移其他一些数据要多得多。

在MySql中,最简单的方法是将字段定义为int和auto increment。将此id字段用作外键。另一种方式是引用drupal节点的nid / vid。