在查询中使用插入ID?

时间:2013-06-03 15:52:13

标签: mysql

我正在插入我的照片表:

id | name
 1 | dog.gif

我还想获取上面插入(1)的id并将其插入到另一个表(gallery表)中。

是否可以在一个查询中执行此操作,还是需要两个?

2 个答案:

答案 0 :(得分:0)

由于它是连续的,您可以使用select max(id) from tableName

但是这很容易在同步更新时出错,因此请使用下面描述的方法

来自php.net clickhere

<?php
$link = mysqli_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysqli::$connect_error() );
}
mysqli::select_db('mydb');

mysqli::query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysqli::$insert_id());
?>

但是你需要连接每个查询。

答案 1 :(得分:0)

INSERT INTO pic SET .... ;

INSERT INTO gallery SET pic_id = LAST_INSERT_ID(), ....