我使用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()
Run Code Online (Sandbox Code Playgroud)
上面的代码给我一个错误信息:
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
Run Code Online (Sandbox Code Playgroud)
pyodbc FAQ有一个关于此的条目.
| 归档时间: |
|
| 查看次数: |
3054 次 |
| 最近记录: |