【问题标题】:My SQL > is is possible to rollback the "CREATE DATABASE" statement?我的 SQL > 是否可以回滚“CREATE DATABASE”语句?
【发布时间】:2015-11-16 13:58:25
【问题描述】:

我打算创建几个数据库并向相应的用户授予权限。例如,

CREATE DATABASE DB1;
GRANT .. ON .. TO DB1;
CREATE DATABASE DB2;
GRANT .. ON .. TO DB2;
CREATE DATABASE DB3;
GRANT .. ON .. TO DB3;

但我想这样做,如果此语句中的任何一个失败,则应该像事务语句的 ROLLBACK 一样取消之前的所有语句,如“CREATE DATABASE”或“GRANT ...”

这可能吗?

【问题讨论】:

    标签: mysql ddl rollback


    【解决方案1】:

    您不能使用 Mysql 工作台进行回滚。 Toad For Mysql 支持回滚选项,您可以从以下网站下载:

    http://toad-for-mysql.en.softonic.com/

    【讨论】:

      【解决方案2】:

      CREATE TABLE 和 GRANT 语句都不能在 mysql 中使用标准回滚命令回滚,请参阅commands that cause implicit commit 上的 mysql 文档。

      您必须通过删除创建的数据库对象并撤销授予的访问权限来手动回滚这些语句。

      某些 mysql 管理器应用程序可能具有此类功能,但这些功能也依赖于手动撤消命令。

      【讨论】:

        猜你喜欢
        • 2011-06-09
        • 1970-01-01
        • 1970-01-01
        • 2019-06-24
        • 1970-01-01
        • 1970-01-01
        • 2017-03-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多