问题是是这样的:我有两张表都有一个名为id的自增列,当我向某张表中插入一条记录,如何立即取出该条记录的自增编号ID?考虑到同一时刻可能有很多用户会向这两张表中插入数据,那怎么才能取到我想要的那条数据的ID呢?并且两张表的主键都是自增列ID。

解决方案 »

  1.   

    复制粘贴:
    定义和用法mysql_insert_id() 函数返回上一步 INSERT 操作产生的 ID。如果上一查询没有产生 AUTO_INCREMENT 的 ID,则 mysql_insert_id() 返回 0。
    语法mysql_insert_id(connection)参数  描述
    connection  可选。规定 MySQL 连接。如果未规定,则使用上一个连接。
    说明mysql_insert_id() 返回给定的 connection 中上一步 INSERT 查询中产生的 AUTO_INCREMENT 的 ID 号。如果没有指定 connection ,则使用上一个打开的连接。
    提示和注释注释:如果需要保存该值以后使用,要确保在产生了值的查询之后立即调用 mysql_insert_id()。
    例子<?php
    $con = mysql_connect("localhost", "hello", "321");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }$db_selected = mysql_select_db("test_db",$con);$sql = "INSERT INTO person VALUES ('Carter','Thomas','Beijing')";
    $result = mysql_query($sql,$con);
    echo "ID of last inserted record is: " . mysql_insert_id();mysql_close($con);
    ?>
      

  2.   

    insert以后通过
    mysql_insert_id --  取得上一步 INSERT 操作产生的 ID