php - INSERT INTO 和主键、自增字段和默认值

标签 php mysql

我正在使用 MySQL 数据库开发 PHP 网络应用。

我想知道找出行在插入后收到的主键(或任何其他自动增量字段)的最佳方法是什么。

作为结果返回整行的东西也很不错,因为我还想知道分配给我没有明确设置的字段的默认值。

感谢所有帮助。

-- 编辑

因此,我正在使用一个内部框架来抽象出实际的数据库功能,所以我不能使用特定于连接的“mysql_last_insert_id”,并且“select last_insert_id”查询 AFAIK 会受到影响其他数据库连接,特别是考虑到我正在使用的框架为每个查询打开新连接。

我猜这是一个框架问题,你帮不了我。不过,如果 INSERT INTO 具有“返回插入的行”模式,那就太好了。

最佳答案

MySQL 提供了一种方便的方式来回答这个确切的问题:

mysql> SELECT LAST_INSERT_ID()

mysql_* 函数带有一个包装器:检查 mysql_insert_id

PDO 的 mysql 驱动程序给出相同的:

$pdo->exec('insert into ...');
$lastId = $pdo->lastInsertId();

关于php - INSERT INTO 和主键、自增字段和默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8746416/

相关文章:

mysql - 将日期分类为 "yesterday"、 "last week"等

mysql - 是否可以更改数据库的 mysql 转储文件中的数据类型?

PHPStorm -> Sublime Text mac 快捷键

javascript - 脚本不适用于新版本的 jQuery

php - fgetcsv 没有正确读取保存在 linux 系统中的 csv 文件

MYSQL查询只需要在group by字段中获取更大的日期值

php - mysqli_fetch_assoc 只返回数组的第一个元素

mysql - SQL : "Strict equals" doesn't work with LIKE % if last repeats a few times

php - mysql 在 join 和 union 和/或其他之间的搜索速度

php - 如何编辑 Divi 主题的存档页面?