Php mysqli\u begin\u transaction()和mysqli\u autocommit之间有什么区别

Php mysqli\u begin\u transaction()和mysqli\u autocommit之间有什么区别,php,mysqli,transactions,Php,Mysqli,Transactions,mysqli\u begin\u transaction()是否实现了与mysqli\u autocommit()相同的功能? mysqli\u autocommit()永久设置自动提交模式。这意味着,如果将其设置为0,然后提交事务,则模式将保持为0 mysqli\u begin\u transaction()开始单个事务。这意味着提交后,模式将恢复到以前的状态。 此外,它允许您微调事务,以以下模式之一启动它: MYSQLI_TRANS_START_READ_ONLY MYSQLI\u TRA

mysqli\u begin\u transaction()
是否实现了与
mysqli\u autocommit()
相同的功能?

  • mysqli\u autocommit()
    永久设置自动提交模式。这意味着,如果将其设置为0,然后提交事务,则模式将保持为0
  • mysqli\u begin\u transaction()
    开始单个事务。这意味着提交后,模式将恢复到以前的状态。
    此外,它允许您微调事务,以以下模式之一启动它:
    • MYSQLI_TRANS_START_READ_ONLY
    • MYSQLI\u TRANS\u START\u READ\u WRITE
    • MYSQLI\u TRANS\u START\u与\u一致\u快照
      您可以阅读mysql文档中的模式

mysqli\u自动提交意味着在每次查询之后,结果会立即提交。。(所以你不能roolback)mysqli_begin_事务意味着一个事务开始。。然后执行您可以提交或roolback它们的查询在调用
mysqli\u begin\u事务()之前,我是否必须将autocommitt设置为FALSE
或者它自己处理并在提交后打开。您最好从
mysqli\u自动提交
mysqli\u提交
中询问差异。我已经使用您的解释实现了我的代码,到目前为止,它按照我想要的方式工作,只是Xammp向我抛出了一个错误,说当前服务器没有支持只读和只写的最低值应为
5.6.5
,我的PHP脚本不会重定向用户保持在同一页面上。我将尝试将其托管在实时服务器上。还有一个问题:我有多个用户使用行级锁定读写同一行,但我找不到模拟多个用户的方法,你有什么工具或方法可以推荐吗?最好单独提问