CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  企业开发 >  Lotus

请教如何在b/s下把nsf数据导出到关系型数据库中

楼主numberpig(冰箱里的驴子)2005-12-20 19:01:42 在 企业开发 / Lotus 提问

请问有什么方法能把lotus数据库中的数据导出到关系型数据中,比如db2   ,sql   server等,急用,在线等。。。 问题点数:100、回复次数:9Top

1 楼loadagain(最后一只妖怪)回复于 2005-12-20 20:23:53 得分 10

菜鸟呀菜鸟呀,连在Browser端导出还是在Server端导出都没说清楚哈,哈哈。不过我想一般是在server端做数据交换。  
  有很多方法,比如odbc,第三方插件如ado,ado.net,或者decs,就看你的选择了。不过本人喜欢用Ado.就是性能方面不大好,但是Debug和稳定性倒是爽哈,哈哈哈Top

2 楼numberpig(冰箱里的驴子)回复于 2005-12-20 23:24:35 得分 0

有具体的代码吗?我听不懂啊。。。Top

3 楼numberpig(冰箱里的驴子)回复于 2005-12-20 23:28:52 得分 0

我的意思是,比如有一个domino数据库,能不能在浏览器上点一个按钮就把库中的文档导出到关系型数据库中Top

4 楼superBoA(XXX)回复于 2005-12-21 09:05:51 得分 80

导入SQL  
  Option   Public  
  Use   "Common"  
  Uselsx   "*LSXODBC"  
   
  Sub   Initialize  
  Dim   session   As   New   NotesSession  
  Dim   doc   As   NotesDocument '当前文档的后台文档  
  Dim   tobeSearchDb   As   NotesDatabase '待搜索的数据库  
  Dim   DstDocs   As   NotesDocumentCollection '搜索结果集  
  Dim   RstDoc   As   NotesDocument                               '查询到的文档  
  Dim   sRstView   As   NotesView                                         '结果显示视图  
  Set   Db=Session.CurrentDatabase  
  Set   doc=session.DocumentContext  
   
  Dim   con   As   ODBCConnection  
  Dim   userName   As   String  
  Dim   password   As   String  
  Dim   qry   As   ODBCQuery  
  Dim   result   As   ODBCResultSet  
  Dim   A   As   String  
   
  Set   con   =   New   ODBCConnection  
  Set   qry   =   New   ODBCQuery  
  Set   result   =   New   ODBCResultSet  
   
  Set   qry.Connection   =   con  
  Set   result.Query   =   qry  
   
  A=con.ConnectTo("CoprYW","sa","123")  
   
  qry.SQL   =   "   INSERT   INTO   mt(phone,msg_content,sm_flag)     VALUES   ('"+doc.SMSendTo(0)+"','"+doc.SMBody(0)+"','1');   "  
   
  'Call   JSAction("Alert",Cstr(a))  
  If   Not   result.Execute   Then  
  'Messagebox   _  
  'result.GetExtendedErrorMessage,,   result.GetErrorMessage  
   
  'Exit   Sub  
  End   If  
  result.Close(DB_CLOSE)  
  con.Disconnect  
   
  End   SubTop

5 楼numberpig(冰箱里的驴子)回复于 2005-12-21 21:34:29 得分 0

请问楼上的大侠,为什么用use   "common"   出错   啊Top

6 楼punky()回复于 2005-12-21 23:10:41 得分 10

use   "Common"是饮用一段Script库中的代码   把许多经常用的代码写到script库中   非常简便。因为你本地没有Common库(通常都是自己或公司统一总结的)   所以当然调用不成功了。Top

7 楼numberpig(冰箱里的驴子)回复于 2005-12-21 23:44:40 得分 0

我把use   common去掉,然后运行代码,日志里提示说连接已经得到了,可为什么数据没有写到sql   server数据库中呢?请高手指点Top

8 楼numberpig(冰箱里的驴子)回复于 2005-12-21 23:50:06 得分 0

我的代码如下:  
  Sub   Initialize  
  On   Error   Goto   weberr  
  Dim   session   As   New   NotesSession  
  Dim   agentLog   As   NotesLog  
  Set   agentLog=New   NotesLog("Agent   log")  
  Call   agentLog.OpenAgentLog  
  Dim   doc   As   NotesDocument '当前文档的后台文档  
  Dim   tobeSearchDb   As   NotesDatabase '待搜索的数据库  
  Dim   DstDocs   As   NotesDocumentCollection '搜索结果集  
  Dim   RstDoc   As   NotesDocument                               '查询到的文档  
  Dim   sRstView   As   NotesView                                         '结果显示视图  
  Set   Db=Session.CurrentDatabase  
  Set   doc=session.DocumentContext  
  Dim   con   As   ODBCConnection  
  Dim   userName   As   String  
  Dim   password   As   String  
  Dim   qry   As   ODBCQuery  
  Dim   result   As   ODBCResultSet  
  Dim   A   As   String  
   
  Set   con   =   New   ODBCConnection  
  Set   qry   =   New   ODBCQuery  
  Set   result   =   New   ODBCResultSet  
  Set   qry.Connection   =   con  
  Set   result.Query   =   qry  
  A=con.ConnectTo("tomdb","sa","123")  
  Call   agentlog.LogAction("begin---con.ConnectTo========"+A)  
  '日志此处显示为true  
  qry.SQL   =   "   INSERT   INTO   tab1(id)     VALUES   ('"+doc.UNID(0)+"','1');   "  
  Call   agentlog.LogAction("qry.SQL======"+Cstr(qry.SQL))  
  If   Not   result.Execute   Then  
   
  Call   agentlog.LogAction("========result.Execute   is   not   excute========")  
  End   If  
  Call   agentlog.LogAction("========result.Execute   is   excute========")  
  result.Close(DB_CLOSE)  
  con.Disconnect  
  Exit   Sub  
   
  weberr:  
  theagent=ss.currentagent  
  agentnaem=thenagent.name  
  If   iserror=0   Then  
  Print   "<head>"  
  Print   "<title>"  
  Print   "error   in   agent"+agentname  
  Print   "</title>"  
  Print   "</head>"  
   
  iserror=1  
  End   If  
  Print   "<br>"  
  Print   "<b>error   in   line"+Cstr(Erl)+"</b>"  
  Print   "<br>"  
  Print   "error#"+Cstr(Err)+":"+Error  
  Print   "<br>"  
  Exit   Sub  
  End   SubTop

9 楼numberpig(冰箱里的驴子)回复于 2005-12-22 20:57:25 得分 0

谢谢punky   loadagain   特别是superBoA   的帮助与支持,现在问题解决,结贴散分Top

相关问题

  • 菜鸟问题:由用户A导出的.DMP文件怎么再由用户B导入?
  • ~~~~~~求程序实现代码:如何在B/S架构中实现Excel的导入/导出?(高手进!)
  • dll导出类
  • 导出函数.
  • 数据导出
  • 导入导出
  • 数据导出
  • 导入导出
  • 数据导出
  • 数据导出

关键词

  • 文档
  • 数据
  • 数据库
  • 代码
  • ado
  • db
  • sql
  • server
  • 导出
  • qry

得分解答快速导航

  • 帖主:numberpig
  • loadagain
  • superBoA
  • punky

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo