查看完整版本: 连接PostgreSQL数据库失败

linwenyan 2008-6-20 11:46

连接PostgreSQL数据库失败

Function CustAddress_Count(custcode)

        ConnectionString="driver ={PostgreSQL ANSI};Server=192.168.0.10;UID=1; PWD=1; Database=99;"         '初始化连接字符串
        Set Conn=CreateObject("ADODB.Connection")                       '创建Connection对象
        Conn.Open  ConnectionString                                     ' 调用Open方法,建立连接
        If conn.State = 0  Then
           Print "连接数据库失败"
        Else
            Print "连接数据库成功"
   End If

   Set rs = conn.Execute("select count(custcode) as AddCount  from cusaddresstbl where cuscode='" &custcode&"'")
   AddressCount = rs("AddCount").Value
   Print "AddressCount:"&" "&AddressCount&chr(13)&chr(10)                     
        Conn.Close                                                        '关闭连接
        Set Conn=Nothing                                                  '释放Connection对象


   
End Function


连接数据库提示“[Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序”,请问哪里写错了?

[[i] 本帖最后由 linwenyan 于 2008-6-20 12:05 编辑 [/i]]

milo.jiang 2008-6-20 11:57

(1)是否已经创建了数据源?
(2)该连接是否需要相关的ODBC驱动?

linwenyan 2008-6-20 12:07

运行到Conn.Open  ConnectionString 就报错了“[Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序”   

我是个QTP新手,你说的问题我要怎么判断呢,我不太清楚。

qicyt1812 2008-6-20 12:16

1、控制面板->管理工具->数据源(ODBC)中创建相关数据库的数据源,然后再连接
2、不是很清楚你写的这个ConnectionString="driver ={PostgreSQL ANSI};Server=192.168.0.10;UID=1; PWD=1; Database=99;"  是否正确,你可以先用创建数据库检查点的方式连接上数据源,获取这个ConnectionString,这样如果创建数据库检查点成功的话,你再在Expert View中使用这个ConnectionString就不会错了,试试看:lol

milo.jiang 2008-6-20 12:50

恩,4楼说的很有道理,因为这个数据库没有用过,不知道你写的串是否正确,可以通过QTP先获取这个库的连接串试一下,有什么问题再讨论

linwenyan 2008-6-20 13:06

"通过QTP先获取这个库的连接串"怎么获取?就是QTP创建数据库检查点时输入的值吗?
我用QTP创建数据库检查点是成功的。

[[i] 本帖最后由 linwenyan 于 2008-6-20 13:08 编辑 [/i]]

milo.jiang 2008-6-20 13:24

插入数据库检查点的时候,选择第二项,即【Specify SQL statement manual】

通过选择Specify SQL statement manual选项,然后选择你指定的数据源,就会得到一个连接字符串了

[[i] 本帖最后由 milo.jiang 于 2008-6-20 13:25 编辑 [/i]]

linwenyan 2008-6-20 14:06

知道了,谢谢:)
页: [1]
查看完整版本: 连接PostgreSQL数据库失败