mySQL - 使用 PHP 的 mysqli 设置隔离级别
如何使用 mysqli 在 PHP 中将事务的隔离级别设置为“SERIALIZABLE”?我到处都找过了,但找不到任何相关信息。
这里是隔离级别的说明。
How do I set the isolation level of a transaction to 'SERIALIZABLE' in PHP using mysqli? I have looked everywhere and I can't find any information on it.
Here is an explanation of the isolation levels.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以在运行语句之前在查询中设置隔离级别。假设您使用同一个会话执行所有操作:
您可能还想关闭 自动提交 之前,因为它改变了可序列化隔离的工作方式< /a>.
You can just set the isolation level in a query before you run your statements. This assume that you do everything using the same session:
You may also want to turn off autocommit before hand since it changes the way serializable isolation works.
简短回答:
长回答:除非您使用SESSION或GLOBAL修饰符,否则设置事务级别将仅适用于下一个查询。
太棒了;
根据带有 InnoDB 表的 MySQL 文档:
请注意,设置
GLOBAL
标志将影响所有后续查询 现有会话不会受到影响。Short answer:
Long Answer: Unless you use the SESSION or GLOBAL modifier, setting the transaction level will only apply to the very next query.
tldr;
According to the MySQL documentation with InnoDB tables:
Note that setting the
GLOBAL
flag will affect all subsequent queries Existing sessions will not be affected.