我需要在一张表中生成大量行,不幸的是,需要在应用程序端(PHP)生成一列。
所以基本上我需要生成这样的东西:
id | encoded_val_based_on_id
-------------------------------
1 | my_encode_func( 1 )
-------------------------------
2 | my_encode_func( 2 )
-------------------------------
3 | my_encode_func( 3 )
-------------------------------
4 | my_encode_func( 4 )
我认为,必须有更好的方法,然后生成N
查询以获取N
id,然后使用“encoded_val_based_on_id”更新这些记录。
除此之外,我想在“encoded_val_based_on_id”上保留唯一索引,因为我会生成空白行然后填充它们,所以我无法做到这一点。
我可以锁定表,获取最后一个 ID,通过在我的应用程序中递增生成 ID + 生成所有其他内容,插入它们并解锁表。我认为这不是正确的方法,但至少可以在 1 个查询(批量插入)中完成,并且我可以将唯一索引保留在那里。