V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
zjx14250
V2EX  ›  MySQL

求问 Mysql 中 last_insert_id()语句的使用?

  •  
  •   zjx14250 · Nov 8, 2016 · 3457 views
    This topic created in 3465 days ago, the information mentioned may be changed or developed.

    一开始建个数据库 MariaDB [test]> create table auto( -> i smallint not null auto_increment, -> name varchar(10), -> primary key(i) -> ) -> ; Query OK, 0 rows affected (0.02 sec)

    然后执行一条插入语句 MariaDB [test]> insert into auto values(1,'1'),(0,'2'),(null,'3'); Query OK, 3 rows affected (0.00 sec) 此时执行 last_insert_id ()结果为 1 再执行一条语句 MariaDB [test]> insert into auto values(4,'4'); Query OK, 1 row affected (0.00 sec) 此时执行 last_insert_id ()结果为 2 再执行一条语句 MariaDB [test]> insert into auto values(5,'104'); 此时执行 last_insert_id ()结果还是为 2

    求问为什么没有变??

    7 replies    2016-11-09 14:13:53 +08:00
    MajorAdam
        1
    MajorAdam  
       Nov 8, 2016 via Android
    第二次应该返回 4 吧
    MajorAdam
        2
    MajorAdam  
       Nov 8, 2016 via Android   ❤️ 1
    只有自增字段由 mysql 来分配时, last_insert_id()才可能得到正确的值
    MajorAdam
        3
    MajorAdam  
       Nov 8, 2016 via Android
    problem solved
    fupenghao
        4
    fupenghao  
       Nov 9, 2016
    并没解决。。。。第二次返回的是 2
    fupenghao
        5
    fupenghao  
       Nov 9, 2016
    MajorAdam
        6
    MajorAdam  
       Nov 9, 2016   ❤️ 1
    @fupenghao 你的自增 id 是自己赋值的 4,不是 mysql 自动生成的 4,只有自增字段由 mysql 来分配时,last_insert_id()才可能得到正确的值
    MajorAdam
        7
    MajorAdam  
       Nov 9, 2016
    "然后执行一条插入语句 MariaDB [test]> insert into auto values(1,'1'),(0,'2'),(null,'3'); Query OK, 3 rows affected (0.00 sec) 此时执行 last_insert_id ()结果为 1" 这是不可能的,此时应为 2
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   815 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 19:19 · PVG 03:19 · LAX 12:19 · JFK 15:19
    ♥ Do have faith in what you're doing.