sql server SSMS与ODBC for BACKUP DATABASE的不同行为

时间:2018-08-07 08:56:15

标签: sql-server odbc

我使用Sql Server本机客户端11进行数据库编程。我使用此命令创建完整备份

BACKUP DATABASE [AminDB] TO DISK = 'E:\AminExe\Hogug02\BKUP\PYBKUPyy-13970515-1211-1.BAK' WITH INIT, COMPRESSION, NOSKIP;

在SSMS中执行此命令时,会得到以下结果:

已处理数据库``AminDB''的175632页,文件1上的文件``AminDB_dat'' 已处理2页的数据库'AminDB',文件'AminDB_log'的页面1。 BACKUP DATABASE在6.029秒(227.588 MB /秒)内成功处理了175634页。

当我使用SqlExecDirect执行此命令时,我得到SUCCESS_WITH_INFO,SQLGetDiagRec返回此结果:

已处理数据库'AminDB'的175632页,文件1上的文件'AminDB_dat'。

并且未创建备份。 对于许多其他数据库,执行备份数据库命令始终返回SQL_SUCCESS_WITH_INFO,但是是否随机创建了备份文件。 我应该为我的应用程序创建成功备份做什么? 提前致谢 阿布扎德先生

1 个答案:

答案 0 :(得分:0)

我在BACKUP DATABASE语句之后反复调用SQLMoreResults,直到它返回SQL_NO_DATA。这样就完全解决了问题。