我正在MySQL中创建一个架构(出于此问题的目的)有两个表:

Projects (pid:int)
Tasks (pid:int,tid:int)


每个项目可以有多个任务,每个任务都属于一个项目。我在将Projects中的pid设置为主键,并在添加项目时自动递增。理想情况下,我想构造Tasks,以便每个任务的主键同时是pid和tid。对于属于同一项目的任务,tid将增加,但对于每个新项目,其tid将再次从1开始。

(pid,tid) = (1,1)(1,2)(1,3)(2,1)(2,2)(3,1)(3,2)(3,3)(3,4)


我知道我可以通过查询找到一个项目的最高tid并为下一个任务手动增加它来达到这种效果。但是,如果可能的话,我想在没有查询的情况下执行此操作。有没有更简单,更有效的方法来实现此功能(例如,使用AUTO_INCREMENT的方法)?

我正在使用Flask微框架和Windows 7上的MySQL 5.7在Python 3中进行编程。

最佳答案

在MyIsam上是可能的。我只是自己尝试了文档。使其适应您的需求即可。

http://dev.mysql.com/doc/refman/5.7/en/example-auto-increment.html

关于python - MySQL自动递增的两部分主键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19482712/

10-12 12:41