加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

用于MySQL的INSERT查询中的用户定义变量

发布时间:2021-03-16 15:11:54 所属栏目:MySql教程 来源:网络整理
导读:我需要在MySQL的INSERT查询中使用用户定义的变量,请参阅下面的示例: INSERT INTO `posts`(`id`) VALUES(NULL);SET @last_insert_id = LAST_INSERT_ID();INSERT INTO `comments`(`id`,`post_id`) VALUES(NULL,"@last_insert_id"); 这个例子不起作用并插入0

我需要在MySQL的INSERT查询中使用用户定义的变量,请参阅下面的示例:

INSERT INTO `posts`(`id`) VALUES(NULL);
SET @last_insert_id = LAST_INSERT_ID();
INSERT INTO `comments`(`id`,`post_id`) VALUES(NULL,"@last_insert_id");

这个例子不起作用并插入0.我做错了什么? 最佳答案 无需将其存储在变量中.您可以在以下INSERT语句中调用LAST_INSERT_ID().

INSERT INTO `comments`(`id`,`post_id`) VALUES (NULL,LAST_INSERT_ID());

…除非您有多个插件要使用该ID执行.

在这种情况下,使用变量的正确语法是在没有引号的情况下这样做:

INSERT INTO `posts`(`id`) VALUES (NULL);
SET @last_insert_id = LAST_INSERT_ID();
/* Several new entries using the same @last_insert_id */
INSERT INTO `comments`(`id`,@last_insert_id);
INSERT INTO `comments`(`id`,@last_insert_id);

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读