把一个数据库表中的数据导入到另一个数据库中解决方法

 

森泰达IT人才基地的网站二次改版已经完成了,余下就是维护和数据导入了。
涉及到将数据从一个数据库的表导入到另一个数据库中,下面总结一下学习的方法:
1. 使用DTS
这是SQL Server2000自带的一个强大的数据导出工具,在2005中变成了SSIS。因为安装环境的问题,不能使用。只能采用后面的方法。
网上有些很好的资源,大家可以参考一下:
eg:
http://www.simple-talk.com/sql/sql-server-2005/executing-ssis-packages-/
http://download.csdn.net/source/358829
http://topic.csdn.net/t/20031211/12/2552174.html

2. 
建议因为sql互导是很严格的,可以先导出到excel,然后再导入指定数据库中。

3. 
先检索出A库中N个表的数据 把数据放入临时表中,在把临时表的数据插入B库N表。

并指出:你可以先导并行的数据库冗余和同步问题也是你要考虑的巨大问题。

4.使用游标
下面是我使用的示例:

--使用游标导入数据 

  declare @id int, @className varchar(100),@count int,@status varchar(50),@content varchar(100), @date datetime
 
  DECLARE Mem_Cursor CURSOR FOR
  SELECT
  [id]
      ,[ClassName]
      ,[StudentNum]
      ,[State]
      ,[Date]
      ,[Content]
  FROM [stdweb].[dbo].[o_NewClassInfor]
 
  OPEN Mem_Cursor

  FETCH NEXT FROM Mem_Cursor INTO @id,@className ,@count,@status,@date,@content

  WHILE @@FETCH_STATUS=0
  BEGIN
     --Sql Statement
 INSERT INTO [www_stditbase_com].[dbo].[OpenClass]
           ([id],[ClassName]
           ,[StudentCount]
           ,[Status]
           ,[EndDate]
           ,[Content])
     VALUES( @id,@className ,@count,@status,@date,@content)
  FETCH NEXT FROM Mem_Cursor INTO @id, @className ,@count,@status,@date,@content
  END

  CLOSE Mem_Cursor
  DEALLOCATE Mem_Cursor
 

 

注意的问题:

(1)前后要对应

(2)获取数据集 要和参数列表对应

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值