我想在MySQL中使用条件如下
我有2个表-tblPage,tblContent
SQL应该按以下顺序进行操作
检查tblPage中的page_name =“ Home”,如果为false,请转到步骤2。
在tblPage中插入一些值,并获取最后插入ID。
在最后一个插入ID(tblPage)的tbContent中插入一些值,然后
获取自己的lastInsertId。
使用(tbContent)的lastInsertId在tbContent中插入一些值,然后
获取自己的lastInsertId。
继续以这种方式插入。
步骤1检查以查看指定列中是否存在任何特定值
步骤2如果指定的value="Home"
存在,请跳过步骤,如果不存在,请在tblPage中插入一些值并获取最后的插入ID
步骤3在同一表中插入一些具有上一个INSERT的lastInsertId的值
该步骤可以通过以下方式继续:在同一张表中插入其他一些行,每个INSERT都获得
下一个的上一个插入ID
我认为它可以与MySql IFNULL,NULIF,LAST_INSERT_ID
等一起使用,但是我无法通过它
我尝试过此操作,但仍然不存在IF条件。如果tblPage中存在name ='home',我需要执行其余的查询
BEGIN
INSERT INTO 'tblPage' ('id','name','url') VALUES
(NULL,'index','home/index');
SET @last_id_in_page = LAST_INSERT_ID();
INSERT INTO 'tblcontent' ('id','page_id','parent') VALUES
(NULL,@last_id_in_page,'home/index');
SET @last_id_in_content = LAST_INSERT_ID();
INSERT INTO 'tblcontent' ('id','page_id','parent') VALUES
(NULL,@last_id_in_page,@last_id_in_content);
SET @last_id_in_content = LAST_INSERT_ID();
INSERT INTO 'tblcontent' ('id','page_id','parent') VALUES
(NULL,@last_id_in_page,@last_id_in_content);
COMMIT;
最佳答案
要获取您可以使用的最后插入的ID,
$id= mysql_insert_id();
插入查询后,您将获得table中最后插入的ID。