sql一张表数据导入另一张表
 
1.如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:
 
INSERT INTO 目标表 SELECT * FROM 来源表;
 
2.比如要将 articles 表插入到 newArticles 表中,则是:
 
INSERT INTO newArticles SELECT * FROM articles;
 
3.如果只希望导入指定字段,可以用这种方法:
  
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;
 
注意字段的顺序必须一致。
 
下面一段代码是我实际工作中用到的,我记录一下,思路是:
先备份整个表的数据,然后进行更新,没问题就完成任务了,有问题请紧急还原表的数据,期间有数据变动,我不知道如何是好,大家是否有好的建议。

--1 先备份短信用户表数据
SELECT * INTO SMSUSERACCOUNT_20150605 FROM SMSUSERACCOUNT; --2 找到所有额度不为0的账号
SELECT * FROM SMSUSERACCOUNT
WHERE CREDIT <>0; --3 先更新短信余额 = 当前短信余额+额度
UPDATE SMSUSERACCOUNT
SET REMAININGNUMBER = REMAININGNUMBER+CREDIT
WHERE CREDIT <>0; --4 将所有账号的额度全部清零
UPDATE SMSUSERACCOUNT SET CREDIT =0; --紧急还原全表数据(如果2张表的字段一致,并且希望插入全部数据,可以用这种方法)
SELECT * FROM SMSUSERACCOUNT;
DELETE FROM SMSUSERACCOUNT;
SELECT * FROM SMSUSERACCOUNT;
INSERT INTO [OpenMasBak].[dbo].[SMSUSERACCOUNT]
([ApplicationCode]
,[ApplicationName]
,[UserId]
,[AccountCode]
,[AccountName]
,[RemainingNumber]
,[Credit]
,[AllCount]
,[SettlementDate]
,[SplitAccount]
,[Enabled]
,[DeletionStateCode]
,[Description]
,[CreateOn]
,[CreateUserId]
,[CreateBy]
,[ModifiedOn]
,[ModifiedUserId]
,[ModifiedBy])
select [ApplicationCode]
,[ApplicationName]
,[UserId]
,[AccountCode]
,[AccountName]
,[RemainingNumber]
,[Credit]
,[AllCount]
,[SettlementDate]
,[SplitAccount]
,[Enabled]
,[DeletionStateCode]
,[Description]
,[CreateOn]
,[CreateUserId]
,[CreateBy]
,[ModifiedOn]
,[ModifiedUserId]
,[ModifiedBy] from [SMSUSERACCOUNT_20150605]
GO /*如果表中没有自增列可以使用这一段sql
--紧急还原全表数据(如果2张表的字段一致,并且希望插入全部数据,可以用这种方法)
INSERT INTO SMSUSERACCOUNT SELECT * FROM SMSUSERACCOUNT_20150605; --紧急还原某些字段(短信余额和额度)
INSERT INTO SMSUSERACCOUNT (Credit, RemainingNumber) SELECT Credit, RemainingNumber FROM SMSUSERACCOUNT_20150605;
*/

SqlServer一张表数据导入另一张表,收藏使用,工作中更新数据错误很有用的更多相关文章

  1. 在Oracle中更新数据时,抛出:ORA-01008: not all variables bound

    在Oracle中更新数据时,抛出了一个 :ORA-01008 not all variables bound, 我的理解是不是所有的变量/参数都有边界,不懂: 后来知道了,原来是“不是所有变量/参数都 ...

  2. 关于ORALCE一个表空间的数据导入到另一个表空间的方法(原创)

    用户:   whnaproject     所属表空间: whnaproject 新用户   : wniec            所属新表空间: wniec 要求:将用户whnaproject中的数 ...

  3. Logstash学习之路(四)使用Logstash将mysql数据导入elasticsearch(单表同步、多表同步、全量同步、增量同步)

    一.使用Logstash将mysql数据导入elasticsearch 1.在mysql中准备数据: mysql> show tables; +----------------+ | Table ...

  4. Sqoop(三)将关系型数据库中的数据导入到HDFS(包括hive,hbase中)

    一.说明: 将关系型数据库中的数据导入到 HDFS(包括 Hive, HBase) 中,如果导入的是 Hive,那么当 Hive 中没有对应表时,则自动创建. 二.操作 1.创建一张跟mysql中的i ...

  5. SQL Server导入数据报错"无法在只读列“Id”中插入数据"

    使用sql server 导入数据报错:无法在只读列'id'中插入数据.如下图所示: 查找出现该问题的原因是表中id为自动增长的标识列,需要在[编辑映射]中勾选"启用标识插入": ...

  6. canal从mysql拉取数据,并以protobuf的格式往kafka中写数据

    大致思路: canal去mysql拉取数据,放在canal所在的节点上,并且自身对外提供一个tcp服务,我们只要写一个连接该服务的客户端,去拉取数据并且指定往kafka写数据的格式就能达到以proto ...

  7. SQLServer将一个表的数据导入到另一个表

    1.假如A表存在 insert into A(a,b,c) (select a,b,c from B) 2.假如A表不存在 select a,b,c into A from B 3.假如需要跨数据库 ...

  8. Sqoop-将MySQL数据导入到hive orc表

    sqoop创建并导入数据到hive orc表 sqoop import \ --connect jdbc:mysql://localhost:3306/spider \ --username root ...

  9. oracle如何将数据导入到另一个表空间

    某个用户的数据在USER表空间里,如果多个用户的数据都在USERS表空间内,将严重影响系统性能,一般在系统迁移的时候,在新的系统里希望导入 一个独立的用户表空间,但是经常无法导入用户指定的缺省表空间, ...

随机推荐

  1. windows 应用商店应用笔记

    xaml http://www.cnblogs.com/free722/archive/2011/11/06/2238073.html win8 http://blog.csdn.net/ygzk12 ...

  2. windows原生开发之界面疑云

        windows桌面开发,界面始终是最大的困惑.我们对前端工具的要求,其实只有窗体设计器.消息映射,过分点的话自适应屏幕.模型绑定.能够免于手工书写,其实这个问题并不复杂,但VS不实现.QT语法 ...

  3. asihttprequest本机调试时正常,发布后闪退

    "Compile sources" -->"Build Phases" 找到ASIFormDataRequest.m和ASIHTTPRequest.m,修 ...

  4. android 开发 - 网络图片加载库 Fresco 的使用。

    概述 Fresco 是 facebook 的开源类库,它支持更有效的加载网络图片以及资源图片.它自带三级缓存功能,让图片显示更高效. 介绍 Fresco 是一个强大的图片加载组件. Fresco 中设 ...

  5. Unity数据存储路径总结

    一.在项目根目录中创建Resources文件夹来保存文件.可以使用Resources.Load("文件名字,注:不包括文件后缀名");把文件夹中的对象加载出来.注:此方可实现对文件 ...

  6. 解决HP打印机错误:Couldn't open fifo

    我的是因为选错了打印机协议,一开始选成了“互联网打印协议 - IPP”. 解决方案:删除原有打印机配置,重新选择协议为“HP Jetdirect-Socket”即可.

  7. 理解WebSocket

    WebSocket的动机是什么? 目前的Web通信使用的是HTTP协议,HTTP协议是基于TCP协议的应用层协议,HTTP协议的工作模式是request/response模式.在一次通信中,必须首先由 ...

  8. MSIL 教程(三):类和异常处理(转)

    转自:http://www.cnblogs.com/Yahong111/archive/2007/08/16/857771.html 续上文[翻译]MSIL 教程(二):数组.分支.循环.使用不安全代 ...

  9. Clough-Tocher

    Clough-Tocher The Clough-Tocher interpolation technique is often referred to in the literature as a ...

  10. angularjs + seajs构建Web Form前端(二)

    回顾 上一篇讲解了引入bootstrap构建一个简单的登录页面,如何让angularjs自动启动并绑定视图,操作过程当中如何使用ui-bootstrap,继而完成简单功能后如何引入seajs后如何使n ...