我正在尝试建立一个MySQL数据库来存储生物数据。我必须从一个文件中提取这些数据,为此我有一个perl脚本。我遇到的问题是,我需要三个主键才能使它们唯一,并且我希望其中一个是自动递增的整数。但是,我希望每次前两个键的组合发生变化时,自动递增的值都会重置。
sequence1 | hit1 | 1
sequence1 | hit1 | 2
sequence1 | hit2 | 1
sequence2 | something | 1
sequence2 | something | 2
sequence2 | something | 3
sequence3 | something | 1等等等等。
这是可能的,还是我必须将其直接实现到脚本中?
谢谢
发布于 2012-04-13 20:57:32
它只能与MyISAM表一起使用,并且不能在InnoDB或MySQL拥有的任何其他存储引擎中工作。
只需在(col1,col2,id)上创建一个主键,并在id列上设置auto_increment标志。并确保id上没有唯一的约束。MyISAM将为每个唯一的(col1,col2)对生成一个新的值序列。
https://stackoverflow.com/questions/10137850
复制相似问题