SQL备份表数据

2023-10-27

1:情况说明

对某个表,需要进行某些删除或修改操作测试,但也需要数据还原,所以需要备份表中数据。

2:思路分析

一般操作,将表A所有的数据,备份到新建表B中(若有其他更屌的操作,请告诉我,万分感谢)。

3:具体SQL实现(库类型说明:SQL SERVER2008)

3.1:备份表数据

--使用哪个库说明
use CFAsset
begin
    --AssetBorrowOut:备份表
    --AssetBorrowOut_20180814:记录表,用于数据还原
    --AssetBorrowOut_20180814,表名是随意的,并不需要先建立该表,备份中,会自行根据原表格式创建
	  select * into AssetBorrowOut_20180814 from AssetBorrowOut
end

3.2:业务操作,对表数据进行了不可恢复的操作,这里只用更新修改作为例子

use CFAsset
begin
    --用于遍历读取游标中的deptid字段
	declare @deptid int
    --游标定义
	declare cur_erCode cursor FOR
	select deptid from dbo.AssetBorrowOut
	--打开游标
	open cur_erCode
	fetch next from cur_erCode into @deptid
	while(@@fetch_status=0)--固定写法
	begin
		
        --具体业务,具体实现
        --deptid切换
		update AssetBorrowOut
		set status = 'ok'
		where deptid = @deptid
			
		fetch next from cur_erCode into @deptid --跳转到下一行,不然会死循环,类似指针
	end
	--关闭游标
	CLOSE cur_erCode
	--释放游标
	DEALLOCATE cur_erCode
end

3.3:恢复数据,先删除备份表,然后将记录表,写回备份表中

删除数据
DELETE from AssetBorrowOut
 
--将记录表AssetBorrowOut_20180814数据插入到原来的备份表AssetBorrowOut中
--将自增主键关闭,
set IDENTITY_INSERT AssetBorrowOut ON
insert into AssetBorrowOut(borrowoutid,AssetId,DeptId,Handler,BorrowDeptId,
BorrowDept,Borrower,BeginDate,EndDate,Memo,ReturnDate,Returner,
Receiver,ReturnMemo,Operator,OperatorName,OperateTime,ReturnOperator,
ReturnOperatorName,ReturnOperateTime,BorrowerName,BorrowerCheckTime,erCode,status) 
select
borrowoutid,AssetId,DeptId,Handler,BorrowDeptId,
BorrowDept,Borrower,BeginDate,EndDate,Memo,ReturnDate,Returner,
Receiver,ReturnMemo,Operator,OperatorName,OperateTime,ReturnOperator,
ReturnOperatorName,ReturnOperateTime,BorrowerName,BorrowerCheckTime,erCode,status from AssetBorrowOut_20180814
 
set IDENTITY_INSERT AssetBorrowOut OFF

注释:还有一种方法,是模仿3.1备份数据表做法,要加以验证,也不太确定是否有没问题。

将原来需要备份的表,删除,再重新通过备份记录表是形式,重新创建原表,并添加数据。

代码演示:

begin
	drop table AssetBorrowOut
	select * into AssetBorrowOut FROM assetborrowout_20180814
end

原文链接:https://blog.csdn.net/qq_33172029/java/article/details/82049677

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL备份表数据 的相关文章

  • 将两行中相似的列数据合并到一行中

    我的查询结果具有以下特征 LIDCode Total Domain Region VSE Version AB02 15 GLOBAL CANLA 0 6943 AB02 5925 CENTRE STREET SW 31 GLOBAL CA
  • 如何以最少的查询次数获取帖子列表和关联标签

    我的表格结构如下 标签 更多的是一个类别 id 标签名称 描述 slug POSTS ID 标题 网址 邮戳 id idPost idTag USERS ID 用户名 userSlug VOTES id idPost idUser 每个帖子
  • postgres 有 CLOSEST 运算符吗?

    我正在寻找这样的东西 给定一个表格 id number 1 7 2 1 25 3 1 01 4 3 0 查询SELECT FROM my table WHEREnumberCLOSEST 1 将返回第 3 行 我只关心数字 现在我有一个程序
  • TOAD 将 &String 视为绑定变量

    我正在使用 Oracle Data Integrator 开发一些 ETL 有时会使用 TOAD 测试部分代码 今天我遇到了 TOAD 的问题 我有一行像 AND column value like DEV PROD 当我尝试运行包含上面过
  • Oracle 中的 SQL 调优 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何文章 链接可以让我找到 SQL 调优 Oracle 的示例 如果能用例子来解释那就太好了 我需
  • 使用 Spark DataFrame 获取组后所有组的 TopN

    我有一个 Spark SQL DataFrame user1 item1 rating1 user1 item2 rating2 user1 item3 rating3 user2 item1 rating4 如何按用户分组然后返回TopN
  • PDO SQLSRV 和 PDO MySQL 在获取 int 或 float 时返回字符串

    当您获取时 PDO MS SQL Server 和 PDO MySQL 都会返回一个字符串数组 即使列的 SQL 类型本应是数字类型 例如 int 或 float 我设法解决了这个问题 但我想了解为什么它们一开始就这样设计 是不是因为PDO
  • 根据表sql中的行替换字符串中的字符

    我需要用一些映射的字符替换字符串中的字符列表 我有一个表 dbo CharacterMappings 有 2 列 CharacterToFilter 和 ReplacementCharacter 假设这个表中有3条记录 Filter Rep
  • 为什么这会返回资源 id #2? [复制]

    这个问题在这里已经有答案了 可能的重复 我如何从 PHP 中的 MySql 响应中 回显 资源 id 6 https stackoverflow com questions 4290108 how do i echo a resource
  • SQL服务器事务

    我需要了解sql server事务 我浏览了谷歌上的一些文章 但我什么也没理解 谁能帮我 您可以通过写入显式启动事务BEGIN TRANSACTION 您可以通过运行来结束事务COMMIT TRANSACTION 之前COMMIT运行时 受
  • SQL Server,插入 Excel“链接服务器”时出现“无效列名”错误

    我有一个简单的 Excel 电子表格文档 运行 Office 2013 我使用 Microsoft Office 15 0 Access 数据库引擎 OLE DB 提供程序 将其用作数据库 我可以使用 MS SQL Server Manag
  • 更改迁移中的自动​​增量值(PostgreSQL 和 SQLite3)

    我有一个托管在 Heroku 上的项目 想要更改表的自动增量起始值 我在本地使用 SQLite3 Heroku 使用 PostgreSQL 这是我在迁移中所拥有的 class CreateMytable lt ActiveRecord Mi
  • Mysql 中 UNION 子句的替代方案

    我有两张桌子 表 a 表 b table a ID 1 2 3 4 5 7 table b ID 2 3 4 5 6 我必须得到这样的输出而无需UNION命令 ID 1 2 3 4 5 6 7 注意 我有一个联合解决方案 select fr
  • 独立对列进行排序,使得所有空值都位于每列的最后

    这是一个名为的示例表animal name color fox brown fox red dog gold 现在 我想要的是这样的结果 fox dog brown gold red 名称应该是结果的列 不同颜色值作为行 我的第一个想法是
  • 列中差异的数量

    我想检索一列每行中有多少个字母的差异 例如 如果您有一个值 test 而另一行有一个值 testing 则 test 和 testing 之间的差异为 4 个字母 该列的数据值为 4 I have reflected about it an
  • 在一个数据访问层中处理多个连接字符串

    我有一个有趣的困境 我目前有一个数据访问层 它必须与多个域一起使用 并且每个域都有多个数据库存储库 具体取决于所调用的存储过程 目前 我只需使用 SWITCH 语句来确定应用程序正在运行的计算机 并从 Web config 返回适当的连接字
  • sql server 按组排名

    问题看似简单 但我却无法理解 这是针对 sql 服务器的 what I have in a table What I need as a output cksum id cksum id 2162514679 204 2162514679
  • 了解 SSMS 2008 中关系的更新和删除规则

    当我们定义外键约束时 我对 SQL Server 2008 Management Studio 中的更新和删除规则的含义感到困惑 我也没有找到相关的帮助文档 例如F1帮助 这是屏幕快照 如果有人能描述它们的含义并推荐一些相关文档来阅读 我将
  • 在 SQL 数据库中存储“列表”的最正确方法是什么?

    因此 我读了很多关于如何将多个值存储到一个列中是一个坏主意 并且违反了数据标准化的第一条规则 令人惊讶的是 这不是 不要谈论数据标准化 所以我需要一些帮助 目前我正在为我工 作的地方设计一个 ASP NET 网页 我想根据此人所属的 Act
  • 当所有维度值都具有 100% 重要性时处理多对多维度

    我至少会尽力保持简洁 假设我们正在跟踪一段时间内的账户余额 所以我们的事实表将包含诸如 账户余额情况表 FK 账户ID FK 日期ID Balance 显然你有一个账户维度表 and a 日期维度表 所以现在我们可以轻松地过滤帐户或日期 或

随机推荐

  • <通信接口篇> I2C介绍

    目录 01 I2C总线介绍 总线物理连接 通信模式 I2C协议整体时序 02 I2C读写时序介绍 I2C写时序 主机 I2C读时序 主机 03 文章总结 大家好 这里是程序员杰克 一名平平无奇的嵌入式软件工程师 作为嵌入式开发人员 无论是硬
  • Java计算下一次提醒时间的简单算法

    Java计算下一次提醒时间的简单算法 需求分析 算法分析 代码清单 核心算法 计数器对象 工具类 代码下载地址 需求分析 在生产实践过程中 我们接到了一个这样的需求 客户接到系统做工作单后 按照要求客服人员要定时进行回访 回访提醒必须在工作
  • 2.2.2新版Banner轮播图实现

    随着Android弃用了jcenter库以后 Banner的使用也大大的和以前不同 下面就来介绍一下2 2 2版本banner的使用和Demo 文章目录 一 改进内容 二 Demo效果图 二 步骤 1 引入库 依赖banner 2 xml文
  • OSS对象存储

    文章目录 OSS 1 存储分类 2 对象存储OSS 2 1 概念组成 2 2 存储优势 2 3 与自建服务器的优势 2 4 Bucket存储空间 2 5 存储类型 2 6 对象 2 6 1 命名规范 2 6 2 存储空间与对象关系 2 7
  • Android编译系统-envsetup和lunch代码篇

    Android系统启动篇 1 android系统启动流程简介 2 android init进程启动流程 3 android zygote进程启动流程 4 Android SystemServer进程启动流程 5 android launch
  • mysql组成部分

    一 mysql组成部分 组成部分 1 连接池组件 2 管理服务和工具组件 3 SQL接口组件 4 查询分析器组件 5 优化器组件 6 缓存 cache 组件 7 插件式存储引擎 8 物理文件 1 mysql存储引擎 1 1 InnoDB存储
  • KMP算法原理详解_论文解读版

    1 KMP算法 KMP算法是一种保证线性时间的字符串查找算法 由Knuth Morris和Pratt三位大神发明 而算法取自这三人名字的首字母 因而得名KMP算法 那发明这样的字符串查找算法又有什么用 在当时计算机本身非常昂贵 计算资源更是
  • 531-C++迭代器失效问题及解决方法

    初步在自定义vector类中实现迭代器 迭代器示意图 为什么方式都是一样 因为迭代器遍历完当前元素跳到下一个元素 底层数据结构的具体的遍历方式都封装在这个迭代器的 运算符函数了 所以 作为使用方 我们不需要知道底层的数据结构原理 我们只知道
  • 寄存器堆计算机组成实验,杭电计算机组成原理寄存器堆设计实验4

    杭电计算机组成原理寄存器堆设计实验4 5页 本资源提供全文预览 点击全文预览即可全文预览 如果喜欢文档就下载吧 查找使用更方便哦 9 9 积分 杭州电子科技大学计算机学院实验报告课程名称 计算机组成原理 实验项目 寄存器堆设计实验姓班级 指
  • C语言实现斐波那契数列

    先来说说啥是斐波那契数列 它是一个前两位都为1 从第三位开始 后一位为前两位之和的递增数列 也就是 1 1 2 3 5 8 13 21 34 55 89 我们可以发现 如果你要找第n位的数 其实它就等于第 n 1 位和第 n 2 位之和 那
  • IOS 关于 NSUserDefault

    转载 并不是所有的东西都能往里放的 NSUserDefaults只支持 NSString NSNumber NSDate NSArray NSDictionary NSUserDefaults的方法中用来记录一下永久保留的数据非常方便 不需
  • 大数据手册(Spark)--Spark机器学习(PySpark版)

    文章目录 MLlib ML 常见的特征转换 模型拟合和描述 超参调优 Spark安装配置 Spark基本概念 Spark基础知识 PySpark版 Spark机器学习 PySpark版 Spark流数据处理 PySpark版 MLlib A
  • java创建任意长度空格字符串_输入任意长的一个字符串,统计其字母、数字、空格及其他字符的数量。...

    标签 思路 简单的利用一个多重 if 结构就可以解决 CODE import java util Scanner public class Character public static void main String args Syst
  • 经纬度正则表达式

    经度 180 0 180 0 整数部分为0 180 输入1到8位小数 0 d 1 8 1 9 d d 1 8 1 0 7 d 1 d 1 8 180 0 1 8 纬度 90 0 90 0 整数部分为0 90 输入1到8位小数 0 1 8 d
  • ant上传组件upload,前端读取文件、创建文件

    业务需求是用户上传文件后 还能修改文件内容 最后保存修改后的文件 实现方式 1 前端读取文件内容后显示在代码编辑器中 方便用户修改 2 点保存按钮时 拿到改变的文件内容后 创建新的文件流 提交给后端 这里演示的是JSON文件数据 选择文件
  • 图显系统DRM CRTC完全解析

    目录 CRTC 工作原理和意义 CRTC 模块的初始化和功能 0 引言 DRM 下的 CRTC 代表 RGB 数据管道 从 drm plane 接收像素数据并将其混合到一起 传输给下级显示设备 drm encoder 由 drm displ
  • 原址删除有序数组重复整数

    给定一个有序数组 原址删除重复超过两次的整数 本笔记适合熟悉Python列表list的 coder 翻阅 学习的细节是欢悦的历程 Python 官网 https www python org Free 大咖免费 圣经 教程 python 完
  • Spring中bean创建的生命周期

    1 推断构造方法 2 实例化 3 依赖注入 4 处理Award回调beanFatoryAware 5 初始化前 处理 postConstruct注解 6 初始化 处理iniyializingBean接口 7 初始化前 进行aop
  • Distributed Database System —— Multi-raft协议介绍

    文章目录 Multi Raft协议 Multi Raft需要解决的问题 Multi Raft实现细节 Cockroach Multi Raft Raft Consistency of Range Replicas Range Leaders
  • SQL备份表数据

    1 情况说明 对某个表 需要进行某些删除或修改操作测试 但也需要数据还原 所以需要备份表中数据 2 思路分析 一般操作 将表A所有的数据 备份到新建表B中 若有其他更屌的操作 请告诉我 万分感谢 3 具体SQL实现 库类型说明 SQL SE