请输入您要查询的百科知识:

 

词条 mysql_insert_id
释义

mysql_insert_id

(PHP 3, PHP 4, PHP 5)

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

说明

int mysql_insert_id( [resource link_identifier] )

mysql_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 值,并且不会在查询语句之间被重置。

]警告b]

mysql_insert_id()将 MySQL 内部的 C API 函数 mysql_insert_id()的返回值转换成 long(PHP 中命名为 int)。如果 AUTO_INCREMENT 的列的类型是 BIGINT,则 mysql_insert_id()返回的值将不正确。可以在 SQL 查询中用 MySQL 内部的 SQL 函数 LAST_INSERT_ID()来替代。

例子一:]mysql_insert_id()]例子b]b]

<?php

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\", 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);

?>

输出类似:

ID of last inserted record is: 5

实用功能

<?php

$host = "localhost"; //服务器

$username = "hello"; //用户名;

$password = "321"; //密码

$database = "dataname"; //数据库

function insert_id($sql)

{

global $host,$username,$password,$sql;

$con = mysql_connect($host,username,$password);

mysql_db_query($database,$sql,$conn);

$id = mysql_insert_id();

return $id;

}

echo insert_id("INSERT INTO person VALUES ('Carter','Thomas','Beijing')";

?>

输出类似:

ID of last inserted record is: 5

同时执行了插入数据的效果

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/1/9 8:10:28