php - 使用mysql插入数据时获取ID

标签 php mysql

我有一些表是这样的:

人:

--------------------
|     Person       |
--------------------
| IDPerson         |
| IDName           |
| IDAndress        |
-------------------

姓名:

--------------------
|     Name         |
--------------------
| IDName           |
| FirstName        |
| MiddleName       |
| LastName         |
-------------------

地址:

--------------------
|     Andress      |
--------------------
| IDAndress        |
| Hamlet           |
| Ward             |
| District         |
| City             |
| Zipcode          |
-------------------

账号:

--------------------
|     Account      |
--------------------
| IDAccount        |
| IDPerson         |
| Username         |
| Password         |
| Level            |
-------------------

现在,如果您想添加一个新帐户,我们需要创建一个新人。要创建一个新人,我们需要创建一个新的 Name 和 Andress。然后添加idName、IDAndress Person 表,再添加到IDPerson Account 表。如何获取刚刚创建的idName、IDAndress、IDPerson进行添加?假设你取表中最大的ID,同时注册的人多了就会报错。有人可以帮助我吗?

最佳答案

如果您使用的是 PHP 和 MySQLi,则可以使用 mysqli::insert_id

$mysqli = new mysqli('host', 'username', 'password', 'database');

$sql = "INSERT INTO Person (name, address) VALUES ('test name', 'some address')";
$result = mysqli->query($sql);
echo "ID of last inserted record is: " . mysqli->insert_id;

希望对你有帮助

关于php - 使用mysql插入数据时获取ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22811775/

相关文章:

php - RedBeanPHP findAll 只返回最后一项

php - 如何存储主表数据

javascript - 使用 AJAX 发送 PHP 值

PHP:使用 header() 更改引荐来源网址

php - 默认情况下无法使外键获取其引用的 id 值

php - 从用户那里获取动态帖子名称的多个输入

PHP:如何在不使用 AJAX 调用的情况下更新用户登录计时器

php - MySQL,如何插入空日期

mysql - 如何在flask sqlalchemy中选择列

mysql - 获取每组中的最后一行并按 ID(pk) DESC 对整个数组进行排序并与其他表连接