请教与DB2连接问题

fatimah 2004-12-09 09:28:28
刚刚接触Lotus,很多东西都不会
现在需要连接DB2
是一个小的网上调查程序
调查问题与调查结果存储在DB2中
请问应当使用什么方式连接数据库比较好?
如果可能,可否提供一小段示例代码?
谢谢!
...全文
138 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
fatimah_yu 2004-12-10
  • 打赏
  • 举报
回复
还是我。因为一个用户不能连续三次以上回复,只好再注册一个帐号了 #^_^#
请问,我在WebQueryOpen里调用代理,代理代码如下:
Sub Initialize
Dim con As ODBCConnection
Dim qry As ODBCQuery
Set con = New ODBCConnection
con.SilentMode = False
Messagebox "正在连接关系数据库..."
If con.ConnectTo("数据源","用户名","密码") = False Then
Print "连接数据库失败!"
Exit Sub
End If
Print "关系数据库连接成功!"
con.Disconnect
End Sub
为什么一直都不成功呢?到底哪里出现问题了?这个代理哪里有问题?
我是个新手,麻烦高手指点一下,谢谢!!
fatimah 2004-12-10
  • 打赏
  • 举报
回复
是,我现在正在试,刚刚把数据库安全性配置给改了一下,好像那个也有问题
谢谢!我这就试验你提供的代码 ^_^
wvboat 2004-12-10
  • 打赏
  • 举报
回复
If con.ConnectTo("数据源","用户名","密码") Then——中"数据源","用户名","密码"等,使用你配置odbc时设置的数据源名称,访问用户名,密码

我那个代理在表单queryopen中用,你在表单的querysave或者按钮事件或者在操作菜单中都可能使用类似的代理来访问关系数据库
wvboat 2004-12-10
  • 打赏
  • 举报
回复
:)
哦,还要定义session、db、doc等的,你看一下帮助,里面很多多例子的。上面给的只是连接部分代码,完整的代理还要加些的。
下面这些是我以前写的代理的一部分,你可以参照一下:

Dim session As NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument

Dim con As ODBCConnection
Dim qry As ODBCQuery
Dim result As ODBCResultSet

Set session = New NotesSession
Set db = session.CurrentDatabase

Set doc = session.DocumentContext

Set con = New ODBCConnection
Set qry = New ODBCQuery
Set result = New ODBCResultSet

Call con.Disconnect()
If con.ConnectTo("数据源","用户名","密码") Then

REM 取SQL Server表中的值
Set qry.connection = con
qry.SQL = "SELECT * FROM feeKind,feeManagement WHERE feeKind.feekindid=feeManagement.feekindid AND feeManagement.RowID="& Cint(Trim(doc.RowID(0)))
'qry.SQL = "SELECT * FROM feeManagement WHERE RowID="& Cint(rowid)
Set result.Query = qry
Call result.Execute()
If result.NumRows<>0 Then
doc.pname = result.GetValue("pname")
doc.dep = result.GetValue("dep")
doc.feekindname = result.GetValue("feekindname")
doc.feekindid = result.GetValue("feekindid")
doc.reason = result.GetValue("reason")
doc.moneys = result.GetValue("moneys")
doc.pjname = result.GetValue("pjname")
doc.pdate = result.GetValue("pdate")
doc.whocheck = result.GetValue("whocheck")
doc.whoapprove = result.GetValue("whoapprove")
doc.whoagency = result.GetValue("whoagency")
doc.memo = result.GetValue("memo")
End If

Call con.Disconnect()
End If
fatimah 2004-12-09
  • 打赏
  • 举报
回复
谢谢!我先试试
暂时运行还没成功 :(
吃完饭再接着试
wvboat 2004-12-09
  • 打赏
  • 举报
回复
Uselsx "*LSXODBC"


Dim con As ODBCConnection
Dim qry As ODBCQuery
Set con = New ODBCConnection
con.SilentMode = False
Print "正在连接关系数据库..."
If con.ConnectTo("ODBCSource","sa","123") = False Then //ODBC数据源名、用户名、口令
Print "连接数据库失败!"
Exit Sub
End If
Print "关系数据库连接成功!"


Dim result As ODBCResultSet
Set qry = New ODBCQuery
Set qry.Connection = con

Set result = New ODBCResultSet
Set result.Query = qry
StrSQL = "SELECT * FROM drug"
qry.SQL = StrSQL
If result.Execute = False Then
Print "无法从数据表提取数据!"
Exit Sub
End If
con.Disconnect
fatimah 2004-12-09
  • 打赏
  • 举报
回复
这个ODBC数据源是在系统中设置的吧?我已经设置了
代理我想用LotusScript写,因为我以前用VB比较熟
那么,代理应该怎么写?
是用Uselsx "*LSXODBC"吗?
那con.ConnectTo()里面怎么写连接数据库用的用户密码呀?
谢谢!
wvboat 2004-12-09
  • 打赏
  • 举报
回复
1、配置一个odbc数据源连向db2(可能得先安装一个for db2的驱动,ibm网站上好象有)
2、如果你是用java代理,则可通过odbc-jdbc桥访问;如果用lotusscript,则可直接通过odbc方法访问
3、想用lei等,也要用到配置好的odbc数据源进行
其它请参照我在下面贴子上的回复
http://community.csdn.net/Expert/topic/3439/3439587.xml?temp=.3784601
fatimah 2004-12-09
  • 打赏
  • 举报
回复
公式可以实现,但是希望使用代理完成
我以前没接触过Lotus,是个真正的新手
希望哪位能够指导一下
谢谢
fatimah 2004-12-09
  • 打赏
  • 举报
回复
从什么地方调用这个代理?按钮的click事件吗?
fatimah 2004-12-09
  • 打赏
  • 举报
回复
一直都不行
为什么呀

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧