[Python] Cannot perform a backup or restore operation within a transaction

Discussão em 'Python' iniciado por Stack, Dezembro 7, 2024.

  1. Stack

    Stack Membro Participativo

    I am using PyODBC to back up my database, using following code:

    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()


    The above code give me an error message:


    pyodbc.ProgrammingError:

    ('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot perform a backup or restore operation within a transaction. (3021) (SQLExecDirectW);

    [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE is terminating abnormally. (3013)')
    ​

    I tried to run the SQL code in SQL Server, and it works fine.

    May I know what is wrong with my code?

    Many thanks.

    Continue reading...

Compartilhe esta Página