| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 556 人关注过本帖
标题:利用链接数据库导入其他类型数据库查询的问题
只看楼主 加入收藏
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
结帖率:87.93%
收藏
 问题点数:0 回复次数:2 
利用链接数据库导入其他类型数据库查询的问题
需要定时将Informix数据库的数据导入SQL数据库
思路:
1. 建立一个远程链接,连到Informix
2.写一个存储过程将数据将数据从Informix上导入SQL SERVER
3.建立一个作业定时调用此存储过程
但现在发现
如果单独测试
SELECT top 1 *  FROM ERP.supa.tiptop.ima_file 时
     速度很快 基本上不用1秒
但是如果执行存储过程
CREATE PROCEDURE Mytest2
AS
BEGIN
print 'begin:' + cast(getdate() as varchar(20))
--EXEC sp_addlinkedsrvlogin 'ERP',false
print 'first:' + cast(getdate() as varchar(20))
INSERT INTO ls1
SELECT top 1 *  
FROM ERP.supa.tiptop.ima_file
print 'second:' + cast(getdate() as varchar(20))
SELECT * FROM ls1
print 'third:' + cast(getdate() as varchar(20))
END
则效率很低 基本上建立此存储过程就需要将近1分钟 调用的话则更久

测试代码
print 'procedure begin:' + cast(getdate() as varchar(20))
GO
Mytest2
GO
print 'procedure end:' + cast(getdate() as varchar(20))
GO

发现时间基本上是消耗在了"'procedure begin"与 "begin:"之间了
不知道SQL做了些什么 把时间都消耗在了那了
有哪位兄弟能帮下 或者能另外给个好的思路
搜索更多相关主题的帖子: 数据库 查询 链接 类型 
2009-11-25 14:42
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
多跑了几次 速度确实提高了 但首次跑的速度确实受不了
另外对链接数据库不是很了解 不知道是否在服务器每次重新启后执行
EXEC sp_addlinkedsrvlogin 'ERP',false
我的链接服务器是这样建立的
exec sp_addlinkedserver @server ='ERP',@srvproduct='',@provider='msdasql',@datasrc ='192.168.#.#'


2009-11-25 14:42
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
多次测试了下 对于使用链接服务器的方法 速度上实在是让人很受不了
个人猜想 之所以需要如此长的时间 而且从时间消耗的情况上来看
应该是通过链接服务器从SQL SERVER的SQL语言翻译成Informix的SQL语言上消耗了大量的时间
不知道理解上是否正确 呼唤大牛出来解释
2009-11-25 14:42
快速回复:利用链接数据库导入其他类型数据库查询的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016015 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved