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 相关文章推荐
利用PHP动态生成VRML网页
Oct 09 PHP
PHP对象转换为数组函数(递归方法)
Feb 04 PHP
PHP实现提取一个图像文件并在浏览器上显示的代码
Oct 06 PHP
PHP中$_FILES的使用方法及注意事项说明
Feb 14 PHP
PHP中使用smarty生成静态文件的例子
Apr 24 PHP
php生成4位数字验证码的实现代码
Nov 23 PHP
Yii2框架使用计划任务的方法
May 25 PHP
iOS+PHP注册登录系统 PHP部分(上)
Dec 26 PHP
php自定义函数实现统计中文字符串长度的方法小结
Apr 15 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
Feb 23 PHP
PHP结合Ffmpeg快速搭建流媒体服务的实践记录
Oct 31 PHP
解决php extension 加载顺序问题
Aug 16 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
php下过滤HTML代码的函数
2007/12/10 PHP
兼容firefox,chrome的网页灰度效果
2011/08/08 PHP
js禁止回车提交表单的示例代码
2013/12/23 Javascript
分享一则javascript 调试技巧
2015/01/02 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
2015/03/01 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
2015/09/04 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
基于Bootstrap实现下拉菜单项和表单导航条(两个菜单项,一个下拉菜单和登录表单导航条)
2016/07/22 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
2016/09/17 Javascript
JS中的phototype详解
2017/02/04 Javascript
yarn的使用与升级Node.js的方法详解
2017/06/04 Javascript
关于vue单文件中引用路径的处理方法
2018/01/08 Javascript
js判断传入时间和当前时间大小实例(超简单)
2018/01/11 Javascript
微信小程序实现红包功能(后端PHP实现逻辑)
2018/07/11 Javascript
layui前端框架之table表数据的刷新方法
2018/08/17 Javascript
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
python实现360皮肤按钮控件示例
2014/02/21 Python
Python list操作用法总结
2015/11/10 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
2019/07/22 Python
python批量处理txt文件的实例代码
2020/01/13 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
手机端用rem+scss做适配的详解
2017/11/15 HTML / CSS
挪威太阳镜和眼镜网上商城:SmartBuyGlasses挪威
2016/08/20 全球购物
全球最大的中文旅行网站:去哪儿网
2017/11/16 全球购物
如何高效率的查找一个月以内的数据
2012/04/15 面试题
幼儿园教师奖惩制度
2014/02/01 职场文书
同事吵架检讨书
2014/02/05 职场文书
新春文艺演出主持词
2014/03/27 职场文书
冬季安全检查方案
2014/05/23 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
2014小学二年级班主任工作总结
2014/12/05 职场文书
导游词之河北邯郸
2019/09/12 职场文书
SpringBoot项目部署到阿里云服务器的实现步骤
2022/06/28 Java/Android