PHP获取MySql新增记录ID值的3种方法


Posted in PHP onJune 24, 2014

一、使用语句:
 

mysql_query("select max(id) from t1",$link);

使用此方法得到的是 id最大的值,确为最后一个值,但当多链接线程时,这个最大的id并不一定是我们插入数据的自增id值,因此不适用于多线程。

二,使用函数:msyql_insert_id();

在PHP中,经常需要把插入数据库中的id值取出来,而正好有这么一个函数:

<?php

//执行插入数据库的语句

//……

$getID=mysql_insert_id();//$getID即为最后一条记录的ID
//此函数的使用条件:

//1.假设字段名称为recordID

//2.字段属性须设为:auto_increment

//3.添加数据后使用

//$newID = mysql_insert_id();

//得到ID值

 ?>

PHP 函数 mysql_insert_id() 是返回在最后一次执行了 INSERT 查询后,由 AUTO_INCREMENT 定义的字段的值。

当系统执行完INSERT后,再执行SELECT时,可能已经被分发到了不同的后端服务器,如果使用php编程,此时应该通过 mysql_insert_id()来得到最新插入的id,每次INSERT结束后,其实对应的autoincrement值就已经计算好返回给PHP 了,你无需再发出一次独立的查询,直接用mysql_insert_id()即可。
当插入一条语句时,它自动返回最后的id(mysql自增值)。
并且此函数仅对当前链接有用,即它是多用户安全型的。
建议使用此函数;
问题:当id 为bigint 型时 就不在起作用了。

三、使用查询
 

msyql_query("select last_insert_id()");

last_insert_id() 是mysql 一个函数 也是 对当前链接起效
此用法 解决了 mysql_insert_id () 中遇到的 bigint 型问题
总结:
推荐使用方法二,特殊情况下,可以考虑方法三。
PHP 相关文章推荐
建立文件交换功能的脚本(二)
Oct 09 PHP
PHP下判断网址是否有效的代码
Oct 08 PHP
php 网上商城促销设计实例代码
Feb 17 PHP
PHP人民币金额数字转中文大写的函数代码
Feb 27 PHP
深入HTTP响应状态码速查表的详解
Jun 07 PHP
详解php设置session(过期、失效、有效期)
Nov 12 PHP
php单链表实现代码分享
Jul 04 PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 PHP
PHP基于redis计数器类定义与用法示例
Feb 08 PHP
PHP模型Model类封装数据库操作示例
Mar 14 PHP
PHP优化之批量操作MySQL实例分析
Apr 23 PHP
深入分析PHP设计模式
Jun 15 PHP
PHP判断表单复选框选中状态完整例子
Jun 24 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十)
Jun 24 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
Jun 24 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
Jun 23 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(七)
Jun 23 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(六)
Jun 23 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
Jun 23 #PHP
You might like
用ODBC的分页显示
2006/10/09 PHP
php ftp文件上传函数(基础版)
2010/06/03 PHP
8个出色的WordPress SEO插件收集
2011/02/26 PHP
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
Yii2框架实现数据库常用操作总结
2017/02/08 PHP
yii框架数据库关联查询操作示例
2019/10/14 PHP
URL编码转换,escape() encodeURI() encodeURIComponent()
2006/12/27 Javascript
sina的lightbox效果。
2007/01/09 Javascript
IE与firefox下Dhtml的一些区别小结
2009/12/02 Javascript
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
ExtJS下 Ext.Direct加载和提交过程排错小结
2013/04/02 Javascript
基于JavaScript 下namespace 功能的简单分析
2013/07/05 Javascript
jquery实现submit提交表单
2015/02/03 Javascript
flag和jq on 的绑定多个对象和方法(必看)
2017/02/27 Javascript
React-router v4 路由配置方法小结
2017/08/08 Javascript
详解解决使用axios发送json后台接收不到的问题
2018/06/27 Javascript
详解vue指令与$nextTick 操作DOM的不同之处
2018/08/02 Javascript
详解Vue2.5+迁移至Typescript指南
2019/08/01 Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
2020/08/14 Javascript
vue3.0 加载json的方法(非ajax)
2020/10/26 Javascript
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
举例讲解Django中数据模型访问外键值的方法
2015/07/21 Python
Python随机读取文件实现实例
2017/05/25 Python
python决策树之C4.5算法详解
2017/12/20 Python
python3爬取数据至mysql的方法
2018/06/26 Python
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
巴西最大的运动品牌:Olympikus
2020/07/14 全球购物
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
读书心得体会
2013/12/28 职场文书
春节联欢晚会主持词范文
2014/03/24 职场文书
11.9消防日宣传标语
2014/10/08 职场文书
2015年发展党员工作总结报告
2015/03/31 职场文书
整改通知书
2015/04/20 职场文书
合同纠纷调解书
2015/05/20 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书