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