Php 我的SQL触发器
是否可以设置一个mysql触发器,在数据库中有插入时触发该记录的id号,以及如何使用php捕获该id号?我不太确定您在问什么。是否要在数据库中插入一行并获取分配给它的id?如果是这样,请这样做Php 我的SQL触发器,php,mysql,triggers,Php,Mysql,Triggers,是否可以设置一个mysql触发器,在数据库中有插入时触发该记录的id号,以及如何使用php捕获该id号?我不太确定您在问什么。是否要在数据库中插入一行并获取分配给它的id?如果是这样,请这样做 printf(“上次插入的记录的id为%d\n”,mysql_insert_id()) 除非我不完全理解您的问题,否则您不需要为此设置触发器-只需使用数据库驱动程序的“最后插入的ID”功能即可 下面是一个在PHP中使用基本mysql驱动程序的示例 <?php $db = mysql_connect
printf(“上次插入的记录的id为%d\n”,mysql_insert_id()) 除非我不完全理解您的问题,否则您不需要为此设置触发器-只需使用数据库驱动程序的“最后插入的ID”功能即可 下面是一个在PHP中使用基本mysql驱动程序的示例
<?php
$db = mysql_connect( 'localhost', 'user', 'pass' );
$result = mysql_query( "insert into table (col1, col2) values ('foo', 'bar')", $db );
$lastId = mysql_insert_id();
您不需要触发器来完成您正试图做的事情
只需调用PHP的mysql\u insert\u id
即可返回上次执行的insert查询生成的id
此处描述:
如前面的答案所述,您不需要使用触发器来返回标识。您可以使用mysql_insert_id()命令,如[文档][1]中所述
但是,如果需要在触发器中使用新的插入id,请按如下所示使用新的。[identity\u column\u name]:
CREATE TABLE temp (
temp_id int auto_increment,
value varchar(10),
PRIMARY_KEY(temp_id)
);
CREATE TRIGGER after_insert_temp AFTER INSERT ON temp
FOR EACH ROW
BEGIN
DECLARE @identity;
SET @identity = NEW.temp_id;
-- do something with @identity
END