Mysql 这个SQL语句有什么问题?在同一事务中选择和删除
我发现这个语句有语法错误。知道为什么吗 我唯一的猜测是,会话记录可能已被select锁定,因此无法在同一事务中删除。但这似乎不会导致语法错误Mysql 这个SQL语句有什么问题?在同一事务中选择和删除,mysql,Mysql,我发现这个语句有语法错误。知道为什么吗 我唯一的猜测是,会话记录可能已被select锁定,因此无法在同一事务中删除。但这似乎不会导致语法错误 insert into sessions_history select * from sessions where session_id = 'jjmn6hmuor8mqa2j1vb4gdpno0'; delete from sessions where session_id = 'jjmn6hmu
insert into sessions_history
select *
from sessions
where session_id = 'jjmn6hmuor8mqa2j1vb4gdpno0';
delete from sessions
where session_id = 'jjmn6hmuor8mqa2j1vb4gdpno0';
下面是错误:
错误号码:1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete from sessions where session_id = 'vk744qiebkfr0el7tesi65us04'' at line 1
insert into sessions_history select * from sessions where session_id = 'vk744qiebkfr0el7tesi65us04'; delete from sessions where session_id = 'vk744qiebkfr0el7tesi65us04';
有什么想法吗?你不能在插入到。。。选择声明
insert into sessions_history
select *
from sessions
where session_id = 'jjmn6hmuor8mqa2j1vb4gdpno0';
您实际收到的错误是什么?您能显示您收到的错误吗?两个表的模式是否相同?您是否有多语句模式的MySQL?另外,你真的应该命名你正在插入/选择的列。实际上有一个列不知怎么的出现了问题,谢谢你随机为我找到了一个不同的问题。但是,当我分离这些语句时,整个过程都会起作用,因此必须将它们放在单个事务中。我会检查多语句模式,但我发誓我以前在同一台服务器上做过。对不起,我添加这些是为了修复它。同样没有。这两个查询没有问题,正如您在上次编辑中所显示的。也许您是通过某种编程语言中的某个API发出它们,而大多数编程语言不允许您通过一个API调用发出多个查询。