`

取得上一步 INSERT 操作产生的 ID

阅读更多
這個功能真方便,呵呵~~~!

mysql_insert_id --  取得上一步 INSERT 操作产生的 ID

返回给定的 link_identifier 中上一步 INSERT 查询中产生的 AUTO_INCREMENT 的 ID 号。如果没有指定 link_identifier,则使用上一个打开的连接。

如果上一查询没有产生 AUTO_INCREMENT 的值,则 mysql_insert_id() 返回 0。如果需要保存该值以后使用,要确保在产生了值的查询之后立即调用 mysql_insert_id()。

注意: MySQL 中的 SQL 函数 LAST_INSERT_ID() 总是保存着最新产生的 AUTO_INCREMENT 值,并且不会在查询语句之间被重置。

mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("Could not connect: " . mysql_error());
    mysql_select_db("mydb");

    mysql_query("INSERT INTO mytable (product) values ('kossu')");
    printf ("Last inserted record has id %d\n", mysql_insert_id());

分享到:
评论

相关推荐

    使用MySQL的LAST_INSERT_ID来确定各分表的唯一ID值

    分表除了表名的索引不同之外,表结构都是一样的,... 这个取ID的操作看似很复杂,所幸的是,MySQL提供了LAST_INSERT_ID机制,让我们能一步完成。 1、新建数据表ticket_mutex 代码如下: CREATE TABLE ticket_mutex ( na

    数据库操作语句大全(sql)

    数据库操作语句大全(sql) 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_...

    关于java数据库基本操作

    String sql = "INSERT INTO user(id, name) VALUES (?, ?)"; PreparedStatement ps = cn.prepareStatement(sql); ps.setInt(1, xxx); ps.setString(2, xxx); ResultSet rs = ps.executeQuery(); // 查询 int c...

    SQL Server取得网站路径的几种方法及比较.txt

    2. **执行存储过程**:然后通过调用`xp_dirtree`来获取文件路径,并将结果插入到上一步创建的表中。 ```sql INSERT INTO dirs EXEC master.dbo.xp_dirtree 'C:\'; ``` **示例**: ```sql -- 示例命令 INSERT ...

    经典SQL语句大全

    3),例如:在一个外部表中导入数据,由于某些原因第一次只导入了一部分,但很难判断具体位置,这样只有在下一次全部导入,这样也就产生好多重复的字段,怎样删除重复字段 alter table tablename --添加一个自增列 add...

    [php]mysql数据库操作——DB类

    【作 用】: mysql数据库操作类 【作 者】: Riyan 【版 本】: version 2.0 【修改日期】: 2010/02/11 ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ ※※※※※※※※ **/ class ...

    PL/SQL 基础.doc

    1) PL/SQL(Procedual language/SQL)是在标准SQL的基础上增加了过程化处理的语言; 2) Oracle客户端工具访问Oracle服务器的操作语言; 3) Oracle对SQL的扩充; 4. PL/SQL的优缺点 优点:1) 结构化模块化编程,...

    Linux操作系统基础教程

    五.Linux操作系统上有什么应用?.....................................................................................4 六.在那里可以找到讨论区?..........................................................

    基于Arc SDE forOracle实现erase空间分析计算

    每一步都涉及到特定的操作和技术细节。 ##### 1. 叠加计算 - **目的**:识别出两个或多个空间对象之间的重叠部分。 - **实现方法**:首先判断两个空间对象之间是否存在叠加区域。如果存在,则该叠加部分需要进一步...

    PHP数据库调用类调用实例(详细注释)

    使用fetch_row()方法从结果集里按行取得数据,并通过while循环逐行输出。结果集中每行的数据被存储在数组$r中,$r[0]和$r[1]分别代表行数据的第一列和第二列。 以array方式显示结果集: ```php echo " 以array...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    7.8 使用GROUPING_ID()来扩展报告 187 7.9 GROUPING SETS与ROLLUP() 191 7.10 GROUP BY局限性 193 7.11 小结 196 第8章 分析函数 197 8.1 示例数据 197 8.2 分析函数剖析 198 8.3 函数列表 199 8.4 聚合函数...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 ...

    计算机应用技术(实用手册)

    这里的IDE设备包括了IDE硬盘和IDE光驱,第一、第二组设备是指主板上的第一、第二根IDE数据线,一般来说靠近芯片的是第一组IDE设备,而主设备、从设备是指在一条IDE数据线上接的两个设备,大家知道每根数据线上可以接...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -同时更名的还有GridColumn的ColumnId->ColumnID,GetColumnId->GetColumnID。 -Grid1.Columns.FindColumnById函数被Grid1.FindColumn所替代。 -为TreeCheckEventArgs,TreeExpandEventArgs,...

    ExtAspNet_v2.3.2_dll

    -实际上IE7下所以的回发都慢,原因是客户端的Base64编码速度慢,已经使用encodeURIComponent来代替Base64编码。 -俄语翻译(feedback:vbelyaev)。 +2010-06-30 v2.3.1 -ExtAspNet控件将不在依赖ViewState,...

Global site tag (gtag.js) - Google Analytics