文档详情

SQL数据库备份的VC实现.docx

发布:2015-09-22约字共4页下载文档
文本预览下载声明
SQL数据库的VC实现 Author:lfl Created on: 2010-6-3 完整备份 1. 完整备份数据库的脚本 USE master; GO BACKUP DATABASE [$(dbname)] TO DISK = N$(driver):$(location)$(dbname).bak WITH NOFORMAT, NOINIT, NAME = N$(dbname)-完整数据库备份, SKIP, NOREWIND, NOUNLOAD, STATS = 10 ; BACKUP LOG [$(dbname)] TO DISK = N$(driver):$(location)$(dbname).bak WITH NO_LOG; GO USE [$(dbname)]; GO DBCC SHRINKDATABASE(N$(dbname)); 我将它存为Backupdatabasewithlocation.sql。 2. sqlcmd的批处理脚本 sqlcmd -U %1 -P %2 -v dbname=%3 driver=%4 location=%5 -i %6 我将它存为BackupdatabasewithLocation.bat。 3. 在VC中设定路径 CString app= C:\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Backup\\; m_strBackupLocation = app; //m_strBackupLocation是一个Edit Box所绑定的CString变量。 记住,一定要在路径中添加连续的两个\符号,否则,VC会将单独的\符号视为在VC中连接下一行字符作为整个字符串的操作符。而且,记住,一定要在最后一个目录的后面再添加上\\,否则,在接下来的_splitpath处理过程中,会把最后一层目录给忽略掉。 4. 处理VC中的路径 char _buffer[255]; GetShortPathName(m_strBackupLocation, _buffer, 256);//转换成短路径(无空格短路径) char drive[500],dir[500]; CString test = _buffer; _splitpath(test, drive, dir,NULL,NULL); //用_splitpath可解析出路径、文件名、扩展名 CString d = drive; d.Replace(:,); CString c = dir; 举例: 4.1 路径中无空格 CString app = C:\\backup\\; 4.2 路径中有空格 CString app= C:\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Backup\\; 设置断点后,得到以上的变量的值。 4.3 假若在最后一层路径后没有加\ CString app= C:\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Backup; 5. 在VC中执行sqlcmd脚本 para=sa genius +instanceName+ +d+ +c+ sql/Backupdatabasewithlocation.sql; ShellExecute(NULL,open,bat/BackupdatabasewithLocation.bat,para,NULL,SW_SHOW); 差异备份 1. 差异备份数据库的脚本(由于事务日志备份时出错,故已将NO_LOG修改为NO_TRUNCATE) USE master; GO BACKUP DATABASE [$(dbname)] TO DISK = N$(driver):$(location)$(dbname).bak WITH DIFFERENTIAL, NOINIT, NAME = N$(dbname)-差异数据库备份, SKIP, NOREWIND, NOUNLOAD, STATS = 10 ; BACKUP LOG [$(dbname)] TO DISK = N$(driver):$(location)$(dbname).bak WITH NO_TRUNCATE; GO 2. 差异备份的批处理脚本 sqlcmd -U %1 -P %2 -v dbname=%3 driver=%4 location=%5 -i %6 3. 差异备份在VC中的语句 //差异备份 if(time.GetDayOfWeek()!=1time.GetHour()==23time.GetMinute
显示全部
相似文档