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

MySQL命令行和事务

发布时间:2021-03-31 05:43:05 所属栏目:MySql教程 来源:网络整理
导读:我有一个关于MySQL的问题,但一直无法找到答案.我知道在MySQL中默认启用自动提交.我需要在一个事务中从命令行运行一些更新查询,但我不知道MySQL将如何处理它们.如果我有这样的事情: mysql -uroot -proot -e 'QUERY 1; QUERY 2; QUERY3' 它会作为一个事务执

我有一个关于MySQL的问题,但一直无法找到答案.我知道在MySQL中默认启用自动提交.我需要在一个事务中从命令行运行一些更新查询,但我不知道MySQL将如何处理它们.如果我有这样的事情:

mysql -uroot -proot -e 'QUERY 1; QUERY 2; QUERY3'

它会作为一个事务执行还是MySQL会自动提交每个语句?我需要确保原子性. 最佳答案 您可以使用MySQL的START TRANSACTIONsyntax创建事务提交:

资料来源:http://dev.mysql.com/doc/refman/5.0/en/commit.html

START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;

您也可以在.sql文件中编写查询,并将其传递给mysql:

$cat query.sql | mysql -uroot -proot

(编辑:常州站长网)

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

    热点阅读