当前位置: 首页 > 面试题库 >

无法在事务内执行备份或还原操作

龙嘉誉
2023-03-14
问题内容

我正在使用PyODBC通过以下代码备份数据库:

SQL_command = """
                BACKUP DATABASE [MyDatabase]
                TO DISK = N'D:\MSSQL\BACKUP\MyDatabase_20141212.bak' WITH
                      NOFORMAT
                ,     NOINIT
                ,     NAME = N'MyDatabase_20141212'
                ,     SKIP
                ,     REWIND
                ,     NOUNLOAD
                ,     STATS = 10
              """

conn.cursor.execute(SQL_command)

conn.cursor.commit()

上面的代码给我一个错误消息:

pyodbc.ProgrammingError:

(“ 42000”,“ [42000] [Microsoft] [ODBC SQL Server驱动程序] [SQL
Server]无法在事务内执行备份或还原操作。(3021)(SQLExecDirectW);

[42000] [Microsoft] [ODBC SQL Server驱动程序] [SQL Server] BACKUP
DATABASE异常终止。(3013)’)

我试图在SQL Server中运行SQL代码,并且工作正常。

我可以知道我的代码有什么问题吗?

非常感谢。


问题答案:

您的错误说

无法在事务内执行备份或还原操作。

默认情况下,事务在pyodbc中启动,那么如何在不创建事务的情况下执行查询?只需打开自动提交:

conn.autocommit = true
// do stuff
conn.autocommit = false

在pyodbc
FAQ中有关于此的条目。



 类似资料:
  • 79.概述 备份和还原是许多数据库提供的标准操作。有效的备份和还原策略有助于确保用户可以在发生意外故障时恢复数据。 HBase 备份和还原功能有助于确保使用 HBase 作为规范数据存储库的企业可以从灾难性故障中恢复。另一个重要功能是能够将数据库还原到特定时间点,通常称为快照。 HBase 备份和还原功能可以在 HBase 集群中的表上创建完整备份和增量备份。完整备份是应用增量备份以构建迭代快照的

  • 本文向大家介绍Sqlserver事务备份和还原的实例代码(必看),包括了Sqlserver事务备份和还原的实例代码(必看)的使用技巧和注意事项,需要的朋友参考一下 废话不多说,直接上代码 以上这篇Sqlserver事务备份和还原的实例代码(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 一个安全和可靠的服务器是与定期运行备份有密切的关系,因为由攻击、硬体故障、人为错误、电力中断等引致的错误有可能随时发生。 Navicat 为用户提供一个内置备份和还原工具用于备份或还原 MySQL、PostgreSQL、SQLite 和 MariaDB 数据库对象。对于 Oracle、SQL Server 和 MongoDB,用户可以使用以下的功能。 Oracle 数据泵 SQL Server 备

  • 一个安全和可靠的服务器是与定期运行备份有密切的关系,因为由攻击、硬体故障、人为错误、电力中断等引致的错误有可能随时发生。 Navicat 为用户提供一个内置备份和还原工具用于备份或还原 MySQL、PostgreSQL、SQLite 和 MariaDB 数据库对象。对于 Oracle、SQL Server 和 MongoDB,用户可以使用以下的功能。 Oracle 数据泵 SQL Server 备

  • 一个安全和可靠的服务器是与定期运行备份有密切的关系,因为由攻击、硬体故障、人为错误、电力中断等引致的错误有可能随时发生。 Navicat 为用户提供一个内置备份和还原工具用于备份或还原 MySQL、PostgreSQL、SQLite 和 MariaDB 数据库对象。对于 Oracle、SQL Server 和 MongoDB,用户可以使用以下的功能。 Oracle 数据泵 SQL Server 备

  • 一个安全和可靠的服务器是与定期运行备份有密切的关系,因为错误有可能随时发生 - 由攻击、硬件故障、人为错误、电力中断等引致。 Navicat 让你备份或还原数据库对象。你可以保存设置成设置文件用作设置计划。点击 来打开 备份 的对象列表。提示:备份文件保存于设置位置。要打开文件夹,在备份文件上右击并选择 打开包含的文件夹。 注意:只限于 MySQL、PostgreSQL、SQLite 和 Mari