SQLSERVER数据库中批量导入数据的几种方法
第一:使用Select Into 语句
如果企业数据库都是采用SQL Server数据库的话,则可以利用select into语句实现数据的导入。
select into语句的作用是把数据从另外一个数据库中查询出来,然后插入到用户指定的某个表中。
注意:使用该语句需要注意四个前提
1:需要在目的数据库中建立相关的表
2:这种方法,只复制表中的数据,而不复制表中的索引。
3:这条语句的使用具有局限性,要求源表与目的表所在的数据库都必须是SQL Server,可以允许版本不同。
4:采用这条语句的时候,目的表中不能有数据。否则的话,目的表中的数据将会被清除,也就是说 ,这条语句不支持表与表数据的合并。
在SQL Server中,有一条语句支持表与表数据的合并,那就是insert into,它的作用是把另一张表中的数据插入到当前表中。
若用户想要合并两个表的数据,可以采用此语句。
5:以上两条语句均支持兼容的不同类型的数据类型。例如,在原表中,某个字段的数据类型是整型,而在目的表中,这个字段的数据类型是浮点型,
这两种类型的数据是兼容的,所以数据库是允许这样导入的。
第二:利用Excel等中间工具进行控制。
虽然第一种方法操作比较简单,但是也有一些缺点。如它只支持同一种类型的数据库,不能对数据进行过多的干预等等。一般情况下,若用户数据准确度比较高,
不需要过多的修改,拿来就可以使用的话,笔者建议采用第一种方式。
但是,若在源数据库中,数据的准确度不是很高,又或者,有很多数据时错误的,没有实际意义的。总之,需要对源数据进行整理才能够导入的情况,建议不直
接导入,再进行修改的做法。在这种情况下,最好是先将源数据导出成Excel文件,有些数据库,如Oracle,不支持导出Excel文件,但是它支持导出csv文件,
这种文件也可以,Excel文件可以打开的。
然后,再在Excel中 ,对源数据进行修改。由于Excel是一个很强的表格处理工具,所以,在Excel中修改数据,比在数据库中修改数据要容易一些,也来的简单。
如可以利用按时间排序功能,把一些长久不用的记录清除掉,也可以利用替换功能,把一些不规范的字符替换掉。这些在数据库中比较复杂的任务,在Excel中却
可以轻松的完成。
等到Excel表中的数据修改无误后,就可以把Excel表格文件直接导入到SQL Server数据库中,SQL Server与Excel的兼容性很好,在Sql Server中提供了直接
从Excel文件中导入数据的工具。
这种方式虽然要借助中间工具导入数据,但是,处理起来方便,直观,所以很多时候我们需要这种方式来完成数据导入任务。
SQLSERVER数据库中批量导入数据的几种方法的更多相关文章
- neo4j批量导入数据的两种解决方案
neo4j批量导入数据有两种方法,第一种是使用cypher语法中的LOAD CSV,第二种是使用neo4j自带的工具neo4j-admin import. LOAD CSV 导入的文件必须是csv文件 ...
- C# 批量插入表SQLSERVER SqlBulkCopy往数据库中批量插入数据
#region 帮助实例:SQL 批量插入数据 多种方法 /// <summary> /// SqlBulkCopy往数据库中批量插入数据 /// </summary> /// ...
- SQLServer 批量插入数据的两种方法
SQLServer 批量插入数据的两种方法-发布:dxy 字体:[增加 减小] 类型:转载 在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Ins ...
- SQL 2005批量插入数据的二种方法
SQL 2005批量插入数据的二种方法 Posted on 2010-07-22 18:13 moss_tan_jun 阅读(2635) 评论(2) 编辑 收藏 在SQL Server 中插入一条数据 ...
- MyBatis向数据库中批量插入数据
Foreach标签 foreach: collection:指定要遍历的集合; 表示传入过来的参数的数据类型.该参数为必选.要做 foreach 的对象,作为入参时,List 对象默认用 list 代 ...
- 从TXT文本文档向Sql Server中批量导入数据
下面我们通过以下的简单的SQL语句即可实现数据的批量导入,代码如下: Bulk insert id From 'G:\文档\test.txt' With ( fieldterminator=',', ...
- .Net中批量添加数据的几种实现方法比较
在.Net中经常会遇到批量添加数据,如将Excel中的数据导入数据库,直接在DataGridView控件中添加数据再保存到数据库等等. 方法一:一条一条循环添加 通常我们的第一反应是采用for或for ...
- (转载)MySQl数据库-批量添加数据的两种方法
方法一:使用excel表格 方法二:使用insert语句(FileWriter批量写入) 使用excel表格 1.打开数据表,按照表的字段在excel中添加数据.注意:表中字段名必须和excel中的名 ...
- Hive导入数据的四种方法
Hive的几种常见的数据导入方式这里介绍四种:(1).从本地文件系统中导入数据到Hive表:(2).从HDFS上导入数据到Hive表:(3).从别的表中查询出相应的数据并导入到Hive表中:(4).在 ...
随机推荐
- iOS 静态类库 打包 C,C++文件及和OC混编
iOS 静态类库 编译 C,C++ 我们都知道,OC 原生支持C, 在 创建的 OC类的 .m 里面,可以直接编写C的代码: 同样 Xcode 也支持 OC ,C++的混编,此时,我们通常把OC创建的 ...
- Link Collecting
----------------------------------\ ACM入门总结之常见输入输出格式暨hdu1089~1096 题解,谨献给对acm感兴趣的新人 - 博客频道 - CSDN.NET ...
- 小而美的js程序
1.获取数字数组最小值的索引 function _getMinKey(arr) { var a = arr[0]; var b = 0; for (var k in arr) { if (arr[k] ...
- BeautifulSoup 常用方法
#输出所得标签的‘’属性值 获取 head里面的第一个meta的content值 soup.head.meta['content'] 获取第一个span的内容 soup.span.string 获取第 ...
- eclipse hibernate 插件测试1
今天先测试了hibernate tools 安装 在eclipse marketplace里面搜索 hibernate tools 就能找到 网上很多文章所说的使用 install new softw ...
- Android开发--Activity的创建
1.Activity概述 Activity是android四大基本组件之一.每一个activity文件对应一个界面,一个程序由多个activity组成. 2.Android工作目录
- Java集合——Set接口
1.定义 set中不允许放入重复的元素(元素相同时只取一个),使用equals()方法进行比较.如果返回true,两个对象的HashCode值也应该相等 2.方法 add():添加元素 remove( ...
- 源代码解读Cas实现单点登出(single sign out)功能实现原理
关于Cas实现单点登入(single sing on)功能的文章在网上介绍的比较多,想必大家多多少少都已经有所了解,在此就不再做具体介绍.如果不清楚的,那只能等我把single sign on这块整理 ...
- CPU信息查询
cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l //查看CPU的个数 cat /proc/cpuinfo |grep ...
- HtmlHelper—DropDownList:SelectList、SelectListItem
前言 在项目中经常使用到DropDownList来显示数据库中的数据,典型的例子为为某书籍选择所属类型. 使用SelectList来实现: 实现一: Controller 代码 SelectList ...