php获得刚插入数据的id 的几种方法总结


Posted in PHP onMay 31, 2018

向mysql 插入数据时 很多时候 我们想知道刚刚插入数据的id 这对我们很有用 下面我说出常用的三种方法并一一分析其利与弊。

一 用以下语句:

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

使用这种方法时 我们得到得是 id最大的值 的确时最后一个 但当多链接线程时这个最大的id并不一定是 我们插入的所以这个不利用域线程。

二 用以下函数:

msyql_insert_id();

当系统执行完INSERT后,再执行SELECT时,可能已经被分发到了不同的后端服务器,如果你使用的编程语言是PHP的话,此时应该通过 mysql_insert_id()来得到最新插入的id,每次INSERT结束后,其实对应的autoincrement值就已经计算好返回给PHP 了,你无需再发出一次独立的查询,直接用mysql_insert_id()就可以了这个函数很好用 当我们插入一条语句时 它自动返回了 最后的id值并且此函数 仅对当前链接有用 也就是说 它是多用户安全型的所以我们经常用此函数;

但此函数有一个问题 就是 当id 为bigint 型时 就不在起作用了 所以 现在 正在用此函数的请小心了不过 我们平时很少遇到这样的问题,所以可以不用管它。

三:用一下查询

msyql_query("select last_insert_id()");

last_insert_id() 是mysql 一个函数 也是 对当前链接起效此用法 解决了 mysql_insert_id () 中遇到的 bigint 型问题。

总结: 根据以上分析 第一种方法 尽量少用 多用第二种方法 当遇到特殊情况时 可以考虑用第三种方法

以上这篇php获得刚插入数据的id 的几种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
WINDOWS服务器安装多套PHP的另类解决方案
Oct 09 PHP
用PHP连接Oracle for NT 远程数据库
Oct 09 PHP
PHP Session变量不能传送到下一页的解决方法
Nov 27 PHP
PHPMailer 中文使用说明小结
Jan 22 PHP
深入PHP内存相关的功能特性详解
Jun 08 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
Jun 13 PHP
使用php实现从身份证中提取生日
May 09 PHP
php微信公众账号开发之前五个坑(一)
Sep 18 PHP
php socket通信简单实现
Nov 18 PHP
基于CI框架的微信网页授权库示例
Nov 25 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能
May 31 #PHP
PHP实现可精确验证身份证号码的工具类示例
May 31 #PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
May 31 #PHP
php curl获取到json对象并转成数组array的方法
May 31 #PHP
php插入mysql数据返回id的方法
May 31 #PHP
PHP给前端返回一个JSON对象的实例讲解
May 31 #PHP
PHP实现上传图片到数据库并显示输出的方法
May 31 #PHP
You might like
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
2017/07/27 PHP
JavaScript性能陷阱小结(附实例说明)
2010/12/28 Javascript
javascript自动给文本url地址增加链接的方法分享
2014/01/20 Javascript
JavaScript中通过提示框跳转页面的方法
2016/02/14 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
2016/05/30 Javascript
移动端翻页插件dropload.js(支持Zepto和jQuery)
2016/07/27 Javascript
获取url中用&隔开的参数实例(分享)
2017/05/28 Javascript
jQuery实现表格冻结顶栏效果
2017/08/20 jQuery
解决Vue编译时写在style中的路径问题
2017/09/21 Javascript
JS插件clipboard.js实现一键复制粘贴功能
2020/12/04 Javascript
js实现文件上传功能 后台使用MultipartFile
2018/09/08 Javascript
vue2.0+vue-router构建一个简单的列表页的示例代码
2019/02/13 Javascript
详解使用React制作一个模态框
2019/03/14 Javascript
vue axios封装及API统一管理的方法
2019/04/18 Javascript
Python中还原JavaScript的escape函数编码后字符串的方法
2014/08/22 Python
Python导出DBF文件到Excel的方法
2015/07/25 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
2017/09/28 Python
Python装饰器模式定义与用法分析
2018/08/06 Python
关于python下cv.waitKey无响应的原因及解决方法
2019/01/10 Python
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
2019/04/11 Python
python中break、continue 、exit() 、pass终止循环的区别详解
2019/07/08 Python
python调用matplotlib模块绘制柱状图
2019/10/18 Python
使用python实现希尔、计数、基数基础排序的代码
2019/12/25 Python
Python MySQL 日期时间格式化作为参数的操作
2020/03/02 Python
Django User 模块之 AbstractUser 扩展详解
2020/03/11 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
应聘护理专业毕业自荐书范文
2014/02/12 职场文书
公司承诺书格式
2014/05/21 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
运动会宣传语
2015/07/13 职场文书
2016年中秋节慰问信
2015/12/01 职场文书
神州牡丹园的导游词
2019/11/20 职场文书
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python
解决pycharm下载库时出现Failed to install package的问题
2021/09/04 Python
Redis如何实现验证码发送 以及限制每日发送次数
2022/04/18 Redis
WinServer2012搭建DNS服务器的方法步骤
2022/06/10 Servers