`
ppxieppp
  • 浏览: 49340 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

MySQL 获取当前AUTO_INCREMENT的ID

阅读更多


获得新生成的AUTO_INCREMENT属性的值也有多种方法。推荐的方法是使用LAST_INSERT_ID()函数,即在INSERT之后马上使用:
  SELECT LAST_INSERT_ID();



另外还可以用"WHERE auto_col IS NULL"条件选择出新插入的行,即在INSERT后马上用:
  SELECT * FROM t WHERE a IS NULL;
选择出来的将是新插入的行,而非真正的满足"a IS NULL"条件的行。但你要是再执行一次上述查询,则返回的又变成了真正的满足"a IS NULL"条件的行,由于a是主键,因此肯定会返回空集。这看上去很诡异是吗,不过MySQL也不想这么干,但ODBC标准里曾有这种用法,为了支持ODBC,MySQL也是没办法啊。不过可以将SQL_AUTO_IS_NULL设为0来禁止这一用法。


分享到:
评论

相关推荐

    MySQL 序列 AUTO_INCREMENT详解及实例代码

    MySQL 序列 AUTO_INCREMENT详解及实例代码 MySQL序列是一组整数:1, 2, 3, …,由于一张数据表只能有一个字段自增主键, 如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现。 本章我们将介绍如何使用...

    mysql中自增auto_increment功能的相关设置及问题

    mysql中的自增auto_increment功能相信每位phper都用过,本文就为大家分享一下mysql字段自增功能的具体查看及设置方法

    Mysql auto_increment 重新计数(让id从1开始)

    当清空一个表的时候,重新插入数据,发现auto_increment属性的字段计数不是从1开始的时候,可以使用以下命令

    python mysql自增字段AUTO_INCREMENT值的修改方式

    在之前得文章中我们说过,如果使用delete对数据库中得表进行删除,那么只是把记录删除掉,并且id的值...create table t4(id int auto_increment primary key, num int) engine=innodb default charset=utf8; 那么接下

    mongoid_auto_increment_id:将ID字段覆盖到MySQL,例如Mongoid的自动增量

    像MySQL一样,将Mongoid id字段更改为Integer的宝石。 MongoDB文档中的想法: 注意! 这个宝石已经帮助超过了4年,并产生了超过一百万行,这是非常...gem 'mongoid_auto_increment_id' , "0.6.1" # Mongoid 3.1.x gem

    关于MySQL innodb_autoinc_lock_mode介绍

    innodb_autoinc_lock_mode这个参数控制着在向有auto_increment 列的表插入数据时,相关锁的行为; 通过对它的设置可以达到性能与安全(主从的数据一致性)的平衡 【0】我们先对insert做一下分类 首先insert大致上可以...

    世界国家表+世界省份表+世界城市表_关联id_my数据表

    `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '关联city表的province_id', `country_id` int(11) NOT NULL DEFAULT 0 COMMENT '国家id', `province_name` varchar(100) NOT NULL DEFAULT '' COMMENT '省份名称', ...

    韩顺平的满汉楼源代码

    表名:chart2010 语句:id int primary key auto_increment, num int 表名:menu 语句: id int primary key auto_increment, name varchar(20), cost varchar(10) 表名:uid 语句: id int primary key auto_increment, ...

    Java小区物业管理系统框架 html + css + jquery + jsp + ssm + mysql

    Java小区物业管理系统 框架 html + css + jquery + jsp + ssm + mysql 用户类型 管理员 admin 123456 住户 cc ... `id` int(11) NOT NULL AUTO_INCREMENT, ... `id` int(11) NOT NULL AUTO_INCREMENT,

    Mysql中LAST_INSERT_ID()的函数使用详解

    LAST_INSERT_ID() (with no argument) returns the first automatically generated value that was set for an AUTO_INCREMENT column by the most recently executed INSERT or UPDATE statement

    ll-test.rar

    `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(45) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_...

    Mysql获取id最大值、表的记录总数等相关问题的方法汇总

    一、mysql 获取当前字段最大id SQL语句: select max(id) from yourtable; 二、获取mysql表自增(Auto_increment)值 Auto_increment是表中的一个属性,只要把表的状态获取到,也就可以获取到那个自增值 SQL语句: ...

    Mysql数据库设计.pdf

    create table test( id int primary key auto_increment, title varchar(16) ); describe 表名; desc 表名; drop talbe tablename; alter talbe 表名 action add 列名 add primary key alter 列名 set default drop...

    mysql 地区数据

    `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `areaname` varchar(32) NOT NULL, `pid` int(11) NOT NULL, `shortname` varchar(8) NOT NULL, `level` int(11) NOT NULL, `position` varchar(64) NOT NULL...

    mysql省市县三级表

    `id` int(11) NOT NULL AUTO_INCREMENT, `code` varchar(6) NOT NULL, `name` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=35 DEFAULT CHARSET=utf8; -- ----------------------...

    PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID

    前言 最近在工作中又遇到了这个问题,PHP中如何获得刚插入数据的ID(或...注意:如果上一查询没有产生 AUTO_INCREMENT 的 ID,则 mysql_insert_id() 返回 0。 语法 mysql_insert_id(connection) 参数描述 connecti

    mysql 全国地区表地区数据库表

    `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` longtext, `level` tinyint(4) DEFAULT '0', `parent_id` int(10) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=3784 DEFAULT ...

    消息聊天系统MySQL表设计-消息系统数据库设计.pdf

    消息聊天系统MySQL表设计_消息系统数据库设计 1、新建platform_info表,此表存储调⽤消息平台⽅应⽤信息 CREATE TABLE IF NOT EXISTS `platform_info` ( `id` int(11) NOT NULL AUTO_INCREMENT, `platform_code` ...

    MYSQL 小技巧 — LAST_INSERT_ID

    还有些朋友,返回的都是 0,不知道怎么回事,其实 LAST_INSERT_ID() 返回的是 AUTO_INCREMENT 的 ID。 如果,表结构中,没有设置,AUTO_INCREMENT 那么也无法返回。 还有些人,还是返回为 0. 那么你就要检查一下,...

Global site tag (gtag.js) - Google Analytics