假设我有这样一个存储过程:
CREATE PROCEDURE incrementSomeNum()
BEGIN
START TRANSACTION; # Not sure if this line is necessary.
DECLARE a INT;
SELECT someValue INTO a FROM someTable WHERE id = 1;
UPDATE someTable SET someValue = a + 1 WHERE id = 1;
COMMIT; # And this
END;
现在在我的客户机中,我有这样的代码,在线程中运行。
connection = connectionPool.getConnection()
connection.query("CALL incrementSomeNum();");
connection.close();
这在比赛条件下安全吗?
(假设我使用的是mysql,表使用的是innodb引擎。)
暂无答案!
目前还没有任何答案,快来回答吧!