0

在 php 中有一个带有 textarea 和文件上传的表单。在 mysql 中,我有表 1,其中每个上传文件的行都有名称、大小等数据……我有表 2,其中输入了 textarea 中的数据,一列是上传文件的 id。

mysql_insert_id用来获取表 1 中最后插入行的 id(上传文件的 id)。然后我在表 2 中插入该 ID。

假设不同用户同时进行多次上传,mysql_insert_id每次都会返回正确的 id?如果 2 个用户在确切时间上传会发生什么.. 或者超时.. 我想我在问是否有更好的方法将新创建的 id 同时插入到 2 个表中?

4

3 回答 3

1

它返回进行插入的会话的插入行的 ID。所以,是的,你做得很好。

于 2012-09-22T18:26:09.703 回答
1

根据 php 文档 ( mysqli::$insert_id ) last_insert_id 函数返回由对具有该AUTO_INCREMENT属性的列的表的查询生成的 ID。那是您正在使用的特定资源;其他资源不会互相影响

于 2012-09-22T18:27:15.063 回答
1

如果您当然在表的主键上有自动增量,mysql 不能给出两倍相同的值

于 2012-09-22T18:27:32.103 回答