首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
中国IT教育
您现在的位置: 中国IT实验室 >> Windows >> 服务器技术 >> SQL Server >> 文章正文

SQL Server中数据导入导出三种方法


    
    (2) 灵活度不同。

  OPENDATASOURCE只能打开相应数据库中的表或视图,如果需要过滤的话,只能在SQL Server中进行处理。而OPENROWSET可以在打开数据库的同时对其进行过滤,如上面的例子,在OPENROWSET中可以使用SELECT * FROM table1对abc.mdb中的数据表进行查询,而OPENDATASOURCE只能引用table1,而无法查询table1。因此, OPENROWSET比较OPENDATASOURCE更加灵活。

  2. 使用命令行BCP导入导出数据

  很多大型的系统不仅仅提供了友好的图形用户接口,同时也提供了命令行方式对系统进行控制。在SQL Server中除了可以使用SQL语句对数据进行操作外,还可以使用一个命令行工具BCP对数据进行同样的操作。BCP是基于DB-Library 客户端库的工具。它的功能十分强大,BCP能够以并行方式将数据从多个客户端大容量复制到单个表中,从而大大提高了装载效率。但在执行并行操作时要注意的是只有使用基于 ODBC 或 SQL OLE DB 的 API 的应用程序才可以执行将数据并行装载到单个表中的操作。

  BCP可以将SQL Server中的数据导出到任何OLE DB所支持的数据库的,如下面的语句是将authors表导出到Excel文件中

  bcp pubs.dbo.authors out c:temp1.xls

  -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"passWord"

  BCP不仅能够通过命令行执行,同时也可以通过SQL执行,这需要一个系统存储过程xp_cmdshell来实现,如上面的命令可改写为如下形式。

  EXEC master..xp_cmdshell 'bcp pubs.dbo.authors out

  c:temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"passWord"'

  3. 使用数据转换服务(DTS)导入导出数据

  DTS是SQL Server中导入导出数据的核心,它除有具有SQL和命令行工具BCP相应的功能外,还可以灵活地通过VBScript、JScript等脚本语言对数据进行检验、净化和转换。

  SQL Server为DTS提供了图形用户接口,用户可以使用图形界面导入导出数据,并对数据进行相应的处理。同时,DTS还以com组件的形式提供编程接口,也就是说任何支持com组件的开发工具都可以利用com组件使用DTS所提供的功能。DTS在SQL Server中可以保存为不同的形式,可以是包的形式,也可以保存成Visual Basic源程序文件,这样只要在VB中编译便可以使用DTS com组件了。

  DTS和其它数据导入导出方式最大的不同就是它可以在处理数据的过程中对每一行数据进行深度处理。以下是一段VBScript代码,这段代码在处DTS理每一条记录时执行,DTSDestination表示目标记录,DTSSource表示源记录,在处理“婚姻状况”时,将源记录中的“婚姻状况”中的0或1转换成目标记录中“已婚”或“未婚”。

    

 以下是引用片段:
  Function Main()
  DTSDestination("姓名") = DTSSource("姓名")
  DTSDestination("年龄") = DTSSource("年龄")
  If DTSDestination("婚姻状况") = 1 Then
  DTSDestination("婚姻状况") = "已婚"
  Else
  DTSDestination("婚姻状况") = "未婚"
  End If
  Main = DTSTransformStat_OK
  End Function

    
    上述的三种数据导入导出方法各有其利弊。

上一页  [1] [2] [3] 下一页  

【责编:Zenghui】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·“调教”磁盘,让Vista更在行
 ·windows系统性能优化专题
 ·windows系统安全——系统进程与病毒
 ·Windows 平台搭建VPN攻略
 ·Windiws 系统备份与还原
 ·专题:Windows Vista系统新特性
 ·Windows server 2008专题报道
 ·关注未来 关注Windows Vista成长
 ·明明白白 学会Windows权限设置
 ·想传就传 多平台随心所欲架设FTP
 今日更新
 认证培训
 频道精选
 Windows频道导航