django mysql 主键_关于Django:MySQL数据库中指定的两个主键

我正在尝试创建一个测试数据库,该数据库是现有数据库的副本。为了做到这一点,我正在使用Django模型(理论上是与原始数据库一起使用的模型)。我最近从其他人那里继承了该代码,并试图弄清楚代码到底在发生什么。

在模型中,其中一个表有两列被标识为主键。

column1 = models.IntegerField(primary_key = True)

column2 = models.IntegerField(primary_key = True)

column3 = models.CharField(max_length = 30)

当我尝试将此模型同步到测试数据库时,发生错误:

File"/somePathHere/MySQLdb/connections.py", line 36, in defaulterrorhandler raise errorclass, errorvalue

_mysql_exceptions.OperationalError: (1068, 'Multiple primary key defined')

在Django文档中,Django不允许使用多个主键。但是,查看原始MySQL数据库中的DESCRIBE [tablename]的输出,看来这正是这里发生的情况:

+------------+------------+------+-----+---------+-------+

| Field      | Type       | Null | Key | Default | Extra |

+------------+------------+------+-----&

你可能感兴趣的:(django,mysql,主键)