当前位置: 首页 > news >正文

C#备份数据库文件

c#备份数据库文件完整代码

sqlServer  存储过程:

USE [PSIDBase]
GO
/****** Object:  StoredProcedure [dbo].[sp_BackupDB]    Script Date: 2023/8/31 16:49:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GOALTER procedure [dbo].[sp_BackupDB]@savePath nvarchar(4000) -- 备份数据库保存位置(目录)   ,@dbName nvarchar(4000) -- 需要进行备份的数据库,@bakName nvarchar(4000) -- 备份文件的名称(不含扩展名)as begindeclare @sql nvarchar(4000)/* 验证路径 */if(charindex('/',reverse(@savePath))!=1) beginset @savePath=@savePath+'/'end/* 拼SQL并执行 */set @sql='backup database '+@dbName+' to disk='''+@savePath+@bakName+'.bak'''exec sp_executesql @sql/* 返回执行结果(1=成功,0=失败) */if(@@error=0) beginreturn 1endreturn 0end

App.config添加配置项

<?xml version="1.0" encoding="utf-8"?>
<configuration><startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup><connectionStrings><add name="connStr" connectionString="server=PC-20191008BGNB\SQLEXPRESS;database=***;uid=**;pwd=***;" providerName="System.Data.SqlClient"/></connectionStrings><appSettings><add key="DbName" value="PSIDBase"/></appSettings>
</configuration>

DAL文件:

 /// <summary>/// 备份数据/// </summary>/// <param name="path"></param>/// <param name="dbName"></param>/// <param name="backupName"></param>/// <returns></returns>public int BackupData(string path, string dbName, string backupName){SqlParameter[] paras ={new SqlParameter("@savePath",path),new SqlParameter("@dbName",dbName),new SqlParameter("@bakName",backupName),new SqlParameter("@return",SqlDbType.Int,4)};paras[3].Direction = ParameterDirection.ReturnValue;//返回值参数SqlHelper.ExecuteNonQuery("sp_BackupDB", 2, paras);return paras[3].Value.GetInt();}

BLL:

/// <summary>
/// 备份数据
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public bool BackupData(string path)
{bool bl = false;string dbName = ConfigurationManager.AppSettings["DbName"].ToString();string backupName = dbName + DateTime.Today.ToString("yyyyMMdd");int reVal = sysDAL.BackupData(path, dbName, backupName);bl = reVal == 1 ? true : false;return bl;
}

窗体调用:

using PSI.BLL;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WinPSI.Common;namespace WinPSI.SM
{public partial class FrmBackUpData : Form{public FrmBackUpData(){InitializeComponent();}private Verify verify = new Verify();private void btnCancel_Click(object sender, EventArgs e){this.Close();}private void FrmBackUpData_Load(object sender, EventArgs e){txtPath.Clear();}/// <summary>/// 选择备份位置/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnChoose_Click(object sender, EventArgs e){FolderBrowserDialog ofd = new FolderBrowserDialog();if(ofd.ShowDialog()==DialogResult.OK){txtPath.Text = ofd.SelectedPath;}}private void btnOK_Click(object sender, EventArgs e){string path = txtPath.Text.Trim();if (string.IsNullOrEmpty(path)){MsgBoxHelper.MsgErrorShow("请选择备份文件存放的位置!");return;}if (MsgBoxHelper.MsgBoxConfirm("备份数据", "您确定要备份数据库吗?") == DialogResult.Yes){SysBLL sysBLL = new SysBLL();bool bl = sysBLL.BackupData(path);if (bl){MsgBoxHelper.MsgBoxShow("备份数据", "系统数据备份完毕!");}else{MsgBoxHelper.MsgErrorShow("数据备份失败!");return;}}}}
}

相关文章:

C#备份数据库文件

c#备份数据库文件完整代码 sqlServer 存储过程&#xff1a; USE [PSIDBase] GO /****** Object: StoredProcedure [dbo].[sp_BackupDB] Script Date: 2023/8/31 16:49:02 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GOALTER procedure [dbo].[sp_BackupDB]…...

行军遇到各种复杂地形怎么处理?

行军遇到各种复杂地形怎么处理&#xff1f; 【安志强趣讲《孙子兵法》第30讲】 【原文】 凡军好高而恶下&#xff0c;贵阳而贱阴&#xff0c;养生而处实&#xff0c;军无百疾&#xff0c;是谓必胜。 【注释】 阳&#xff0c;太阳能照到的地方。阴&#xff0c;太阳照不到的地方。…...

Python Number(数字).............................................

Python Number 数据类型用于存储数值。 数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值&#xff0c;将重新分配内存空间。 以下实例在变量赋值时 Number 对象将被创建&#xff1a; var1 1 var2 10您也可以使用del语句删除一些 Number 对象引用。 del语句…...

设置 Hue Server 与 Hue Web 界面之间的会话超时时间

设置 Hue Server 与 Hue Web 界面之间的会话超时时间 在 CDH 的 Hue 中&#xff0c;Auto Logout Timeout 参数表示用户在不活动一段时间后将自动注销&#xff08;登出&#xff09;的超时时间。当用户在 Hue 中处于不活动状态超过该设定时间时&#xff0c;系统将自动注销用户&am…...

openGauss学习笔记-57 openGauss 高级特性-并行查询

文章目录 openGauss学习笔记-57 openGauss 高级特性-并行查询57.1 适用场景与限制57.2 资源对SMP性能的影响57.3 其他因素对SMP性能的影响57.4 配置步骤 openGauss学习笔记-57 openGauss 高级特性-并行查询 openGauss的SMP并行技术是一种利用计算机多核CPU架构来实现多线程并行…...

软考(1)-面向对象的概念

目录 一. 软考基本信息 1. 软考时间&#xff1a; 2. 软考科目&#xff1a; 3.专业知识介绍 -- 综合知识考点分布 4. 专业介绍 -- 软件设计考点分布 二. 面向对象概念 1. 封装 考点一&#xff1a;对象 考点二&#xff1a;封装private 2. 继承 考点三&#xff1a;类 考…...

深度学习推荐系统(四)WideDeep模型及其在Criteo数据集上的应用

深度学习推荐系统(四)Wide&Deep模型及其在Criteo数据集上的应用 在2016年&#xff0c; 随着微软的Deep Crossing&#xff0c; 谷歌的Wide&Deep以及FNN、PNN等一大批优秀的深度学习模型被提出&#xff0c; 推荐系统全面进入了深度学习时代&#xff0c; 时至今日&#x…...

第十二章 YOLO的部署实战篇(中篇)

cuda教程目录 第一章 指针篇 第二章 CUDA原理篇 第三章 CUDA编译器环境配置篇 第四章 kernel函数基础篇 第五章 kernel索引(index)篇 第六章 kenel矩阵计算实战篇 第七章 kenel实战强化篇 第八章 CUDA内存应用与性能优化篇 第九章 CUDA原子(atomic)实战篇 第十章 CUDA流(strea…...

面试题查漏补缺 i++和 ++ i哪个效率更高

i 和 i 哪个效率更高&#xff1f; 在这里声明&#xff0c;简单地比较前缀自增运算符和后缀自增运算符的效率是片面的&#xff0c;因为存在很多因素影响这个问题的答案。首先考虑内建数据类型的情况:如果自增运算表达式的结果没有被使用&#xff0c;而是仅仅简单地用于增加一员…...

Docker的数据管理(持久化存储)

文章目录 一、概述二、数据卷三、数据卷容器四、端口映射五、容器互联&#xff08;使用centos镜像&#xff09;总结 一、概述 管理 Docker 容器中数据主要有两种方式&#xff1a;数据卷&#xff08;Data Volumes&#xff09;和数据卷容器&#xff08;DataVolumes Containers&a…...

定时脚本自动自动将文件push到git

写脚本 绝对路径 环境注意 写python&#xff0c;bash脚本执行调用 py程序 定制crontab -e 日志要指定输入文件中 项目地址 https://gitee.com/stdev_1/sshpi10/ bash脚本 #!/bin/bash 设置要监控的仓库路径 #path~/github/ #watch_dir“/home/pi/gittest/ipset/sshpi10” p…...

025: vue父子组件中传递方法控制:$emit,$refs,$parent,$children

第025个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下&#xff0c;本专栏提供行之有效的源代码示例和信息点介绍&#xff0c;做到灵活运用。 &#xff08;1&#xff09;提供vue2的一些基本操作&#xff1a;安装、引用&#xff0c;模板使…...

使用js搭建简易的WebRTC实现视频直播

首先需要一个信令服务器&#xff0c;我们使用nodejs来搭建。两个端&#xff1a;发送端和接收端。我的目录结构如下图&#xff1a;流程 创建一个文件夹 WebRTC-Test。进入文件夹中&#xff0c;新建一个node的文件夹。使用终端并进入node的目录下&#xff0c;使用 npm init 创建p…...

LeetCode 2707. Extra Characters in a String【动态规划,记忆化搜索,Trie】1735

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…...

设计模式行为型-模板模式

文章目录 一&#xff1a;模板方法设计模式概述1.1 简介1.2 定义和目的1.3 关键特点1.4 适用场景 二&#xff1a;模板方法设计模式基本原理2.1 抽象类2.1.1 定义和作用2.1.2 模板方法2.1.3 具体方法 2.2 具体类2.2.1 定义和作用2.2.2 实现抽象类中的抽象方法2.2.3 覆盖钩子方法 …...

9.3.tensorRT高级(4)封装系列-自动驾驶案例项目self-driving-车道线检测

目录 前言1. 车道线检测总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程&#xff0c;之前有看过一遍&#xff0c;但是没有做笔记&#xff0c;很多东西也忘了。这次重新撸一遍&#xff0c;顺便记记笔记。 本次课程学习 tensorRT 高级-自动驾驶案例项目self-driving-车道…...

django.core.exceptions.AppRegistryNotReady: Apps aren‘t loaded yet.

运行django测试用例报错django.core.exceptions.AppRegistryNotReady: Apps arent loaded yet. 解决&#xff1a;在测试文件上方加上 django.setup() django.setup()是Django框架中的一个函数。它用于在非Django环境下使用Django的各种功能、模型和设置。 在常规的Django应用…...

【C#】C#调用进程打开一个exe程序

文章目录 一、过程二、效果总结 一、过程 新建WinForm程序&#xff0c;并写入代码&#xff0c;明确要调用的程序的绝对路径&#xff08;或相对路径&#xff09;下的exe文件。 调用代码&#xff1a; 这里我调用的另一个程序的路径是&#xff1a; F:\WindowsFormsApplication2…...

宝塔面板定时监控和重启MySQL数据库(计划任务)

往期教程 如果还有不了解宝塔面板怎么使用的小伙伴&#xff0c;可以看下我总结的系列教程&#xff0c;保证从新手变老鸟&#xff1a; 【建站流程科普】 个人和企业搭建网站基本流程及六个主要步骤常见的VPS主机运维面板汇总—网站运维面板云服务器&#xff0c;VPS&#xff0…...

Beats:安装及配置 Metricbeat (二)- 8.x

这篇文章是继文章 “Beats&#xff1a;安装及配置 Metricbeat &#xff08;一&#xff09;- 8.x” 的续篇。你可以先阅读之前的那篇文章再继续阅读这篇文章。我们在这篇文章中继续之前的探讨。 使用 fingerprint 来代替证书 在实际的使用中&#xff0c;我们需要从 Elasticsear…...

渗流完美降雨边界:单、双重渗透介质降雨边界处理的改进探索

渗流完美降雨边界——基于单、双重渗透介质降雨边界处理的改进 [1]模型简介&#xff1a;使用数值模拟软件COMSOL复现论文&#xff08;窦智,刘一民,周志芳,等.基于单、双重渗透介质降雨边界处理的改进[J].岩土力学,2022,43(03):789-798.&#xff09;&#xff0c;该文献针对传统降…...

如何永久保存B站缓存视频?m4s-converter开源工具完整使用指南

如何永久保存B站缓存视频&#xff1f;m4s-converter开源工具完整使用指南 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾经遇到过这样的…...

效率飞跃:用快马平台快速测试与集成Copaw生成的用户认证模块

最近在开发一个需要用户系统的项目时&#xff0c;遇到了一个常见问题&#xff1a;如何快速验证从Copaw下载的认证模块代码是否真的能正常工作&#xff1f;传统方式需要手动搭建测试环境、配置数据库、编写测试用例&#xff0c;整个过程耗时耗力。直到发现了InsCode(快马)平台&a…...

计算机毕业设计springboot展会门票系统 基于SpringBoot的会展票务数字化服务平台 SpringBoot框架下的博览会入场券预约与核销系统

计算机毕业设计springboot展会门票系统 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。随着会展经济的蓬勃发展和数字化转型的深入推进&#xff0c;各类展会活动规模不断扩大&am…...

Fluent UDF向量运算避坑指南:从NV_DOT点积到NV_CROSS叉积,这些细节错了仿真全白算

Fluent UDF向量运算避坑指南&#xff1a;从NV_DOT点积到NV_CROSS叉积&#xff0c;这些细节错了仿真全白算 深夜的办公室里&#xff0c;咖啡杯已经见底&#xff0c;屏幕上的残差曲线却依然倔强地发散着。你反复检查了网格质量、边界条件、湍流模型&#xff0c;甚至重写了三次UDF…...

Hermes性能优化:如何提高邮件生成速度和降低资源消耗

Hermes性能优化&#xff1a;如何提高邮件生成速度和降低资源消耗 【免费下载链接】hermes Golang package that generates clean, responsive HTML e-mails for sending transactional mail 项目地址: https://gitcode.com/gh_mirrors/he/hermes Hermes是一个Golang包&a…...

从选工具到提交论文降AI率全流程避坑指南

把降AI率的整个流程从头到尾捋一遍——从第一次知网检测发现超标&#xff0c;到最终论文成功提交&#xff0c;每一步该干什么&#xff0c;常见问题怎么处理。 这是一篇流程性的指南&#xff0c;适合第一次处理论文AI率的同学从头读&#xff0c;也适合某个步骤卡住了来查的。 …...

告别硬编码!用Rule-Engine 1.0.0重构你的Java业务逻辑(附订单折扣实战)

告别硬编码&#xff01;用Rule-Engine 1.0.0重构你的Java业务逻辑&#xff08;附订单折扣实战&#xff09; 每次电商大促前夜&#xff0c;技术团队最怕听到的一句话是什么&#xff1f;"折扣规则又改了&#xff01;"——这往往意味着通宵修改代码、紧急测试和冒着风险…...

破局双系统文件壁垒:WinBtrfs驱动终极应用指南

破局双系统文件壁垒&#xff1a;WinBtrfs驱动终极应用指南 【免费下载链接】btrfs WinBtrfs - an open-source btrfs driver for Windows 项目地址: https://gitcode.com/gh_mirrors/bt/btrfs 在Windows与Linux双系统环境中&#xff0c;用户常常面临跨系统文件访问的难题…...

告别LiveCharts免费版性能瓶颈:这5个隐藏设置让你的WPF实时曲线图飞起来

突破WPF实时图表性能瓶颈&#xff1a;LiveCharts隐藏优化全解析 当你的WPF应用需要展示实时数据流时&#xff0c;LiveCharts免费版可能是你的首选工具——直到你发现图表开始卡顿、刷新率跟不上数据变化。这不是LiveCharts的终点&#xff0c;而是性能调优的起点。本文将带你深入…...