2012-09-15 53 views
0

可能重复:
Retrieve inserted row ID in SQL在插入时获取当前插入的行ID?

有什么办法没有做选择查询,插入后立即得到插入的行ID?基本上,这个想法是这样的,我有两个表,一个产品,第二个存储有3列 - id/productId/count。我需要在productId中插入我在此查询之前插入的产品的产品ID。因此,例如 -

Product with id 1. 

我将它插入表例如产品,它生成ID 1. 我不做选择,但之后我做另外一个插件,该插件将在表中插入存储这些数据 -

id - 1/productId - 1(从先前的查询产生id为1)/ count = 0

希望你明白我的意思。

编辑:我正在使用MYSQL数据库。

+0

什么数据库的味道PHP的功能?在MS SQL中您可以让存储过程执行返回@@ Identity的插入 – Grixxly

+0

您正在使用哪个数据库?这完全有可能,但它取决于数据库。 – andrewsi

+0

我使用PHP框架codeigniter,我插入到mysql数据库。 – y2ok

回答

2

是的,在MySQL中,只需在第二个查询中使用LAST_INSERT_ID()即可。

+0

好吧,会试试看,希望它能运行codeIgniter;)! – y2ok

+0

编辑:你的回答让我感动到了正确的地方,在codeigniter中它非常相似 - $ this-> db-> insert_id();将提供最后插入的行ID。谢谢 :) !我会尽快接受。 – y2ok

0

使用mysql_insert_id();这是它会返回最后插入自动增量类型属性的ID