51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4501|回复: 7
打印 上一主题 下一主题

[原创] 连接PostgreSQL数据库失败

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-6-20 11:46:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序”,请问哪里写错了?

[ 本帖最后由 linwenyan 于 2008-6-20 12:05 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-6-20 11:57:11 | 只看该作者
(1)是否已经创建了数据源?
(2)该连接是否需要相关的ODBC驱动?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2008-6-20 12:07:16 | 只看该作者
运行到Conn.Open  ConnectionString 就报错了“[Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序”   

我是个QTP新手,你说的问题我要怎么判断呢,我不太清楚。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-6-20 12:16:00 | 只看该作者
1、控制面板->管理工具->数据源(ODBC)中创建相关数据库的数据源,然后再连接
2、不是很清楚你写的这个ConnectionString="driver ={PostgreSQL ANSI};Server=192.168.0.10;UID=1; PWD=1; Database=99;"  是否正确,你可以先用创建数据库检查点的方式连接上数据源,获取这个ConnectionString,这样如果创建数据库检查点成功的话,你再在Expert View中使用这个ConnectionString就不会错了,试试看
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2008-6-20 12:50:21 | 只看该作者
恩,4楼说的很有道理,因为这个数据库没有用过,不知道你写的串是否正确,可以通过QTP先获取这个库的连接串试一下,有什么问题再讨论
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2008-6-20 13:06:53 | 只看该作者
"通过QTP先获取这个库的连接串"怎么获取?就是QTP创建数据库检查点时输入的值吗?
我用QTP创建数据库检查点是成功的。

[ 本帖最后由 linwenyan 于 2008-6-20 13:08 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2008-6-20 13:24:11 | 只看该作者
插入数据库检查点的时候,选择第二项,即【Specify SQL statement manual】

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

[ 本帖最后由 milo.jiang 于 2008-6-20 13:25 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2008-6-20 14:06:05 | 只看该作者
知道了,谢谢
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-16 14:38 , Processed in 0.071070 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表