在AS400平台上lotus domino连接外部关系数据库SQL Server 2000

AS400平台上lotus domino连接 外部 关系数据库 SQL Server 2000
【环境】:

oa         AS400(或者windows 2000server)、domino R5.0.9

fdinfo   linuxTomcat

数据库:  SQL Server 2000

开发工具:Lotus Designer R6.5.3

【方案一】:
JDBC

【具体内容】:

1、新建一个java代理。

属性设置:

共享 
运行此代理的时间:从代理列表中选择执行

指定代理操作的文档:运行一次(可能使用@Command 
目标:

作为Web用户运行

安全等级 3

2、使用以下代码:

import lotus.domino.*;

import java.sql.*;

import java.io.*;

import java.util.Vector;

 

public class JavaAgent extends AgentBase {

       public void NotesMain() {

              PrintWriter response=getAgentOutput();

              try {

                     Session session = getSession();

                     AgentContext agentContext = session.getAgentContext();

                     try{

                            Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

                            System.out.println("load JDBC drivers succeed------JDBC ---");

                            //建立连接  

                            Connection con =DriverManager.getConnection

("jdbc:microsoft:sqlserver://192.168.86.37:1433;

DatabaseName=SMSServer","sa","*******");

 

                            if(!con.isClosed()) {

                                   System.out.println("connect to fdinfo DB succeed");

                                   //response.println("connect to fdinfo DB succeed/n");//浏览器输出

                            } else{

                                   System.out.println("con.isClosed");

                                   response.println("con.isClosed/n");//浏览器输出

                            }

                            Statement stmt=null;

                            String sender=”aaaaa”;

                            String msg=”bbbbb”;

                            String ReceiverMobileNo=”123456789”;

                            String  SQL="INSERT INTO  OutBox

(ExpressLevel,Sender,ReceiverMobileNo,Msg,Url)

VALUES (0,'"+sender+"','"+ReceiverMobileNo+"','"+msg+"',0)";

                            stmt.executeUpdate(SQL);

 

                            System.out.println("insert record succeed");

                            //关闭Statement实例;

                            stmt.close();

                            stmt = null;    

                            response.println("succeed/n");//浏览器输出

                     }catch(SQLException e1){

                            e1.printStackTrace();

                            response.println("err/n");//错误

                     }

              } catch(Exception e) {

                     e.printStackTrace();

                     response.println(e);//错误

              }

       }

}

3、引入合适的JDBC驱动:

注: 驱动一定要找到最合适的版本,这里用到是msbase.jar, mssqlserver.jar, msutil.jar
点击编辑项目,把jar文件引入当前代理

4、表单调用代理
我选择的是执行热点时候

@Command([ToolsRunMacro];"test");

5、总结

以上实例只实现了对SQL Server 2000数据库的数据插入工作,删除等功能不在此文讨论范围内

 

 

 

 

 
开发思路: 使用ADO通过ODBC链接进行Louts数据读取,在建立一个与SQL server数据库相连的ADO,将读取数据写入SQL server数据库。 安装环境: 首先安装lotus_notes853_win_SC(lotus客户端软件) 然后安装LOTUS_NOTES_SQL_853_W32_CIC6PEN(顺序好像有关系,win8.1安装64位不能正常使用,一定要安装32位的) 数据库连接: 先通过lotus客户端软件连接登陆成功,需要admin.id文件 通过ODBC 数据源(32 位) 添加 Lotus Notes SQL Driver(*.nsf)数据源,选择自己的loust数据库文件.nsf delphi ADO控件通过ODBC Drivers直接连接,本程序中用例名设置为LotusOA,每次连接需要输入lotus密码,其他开发这里就不在介绍可以看源代码 delphi ADO控件连接自己本地的SQL Server数据库,程序下载后自己修改 软件使用: 1、配置:通过config.ini修改LOTUSCONN,即LotusOA设置为自己的建立ODBC的名字,关系数据库修改DBCONN,本例中为SQLServer数据库 2、启动程序,点“数据源链接”,程序连接lotus数据库Sql server数据库 设置原始表名:通过lotus设计程序中的试图中可以看到,大部分是fm_Main,设置创建表名用于数据导出的表 3、获取表字段,会读处lotus数据的所有表名,自动目标生成表创建的sql语句,默认字段长度都是254,如需要可以自己修改 4、点“创建表”按钮,如果已创建了不要再点这个按钮 5、点“导出数据”,程序开始自动导出数据 如果目标数据库是其他类型数据库,可自己通过配置文件config.ini中的DBCONN进行修改 lotus导入关系数据库的资源一直很难找,自己的一点拙见,希望对大家有用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值