51Testing软件测试论坛

标题: 【QTP链接Oracle数据库】问题求助 [打印本页]

作者: lalaine520    时间: 2012-3-26 11:09
标题: 【QTP链接Oracle数据库】问题求助
本帖最后由 lalaine520 于 2012-3-29 14:44 编辑

求助大家,QTP链接数据库时,用创建ODBC嘛?
下面是我的代码,但是跑到“Conn.Open ConnectionString”这行就不动了,跑不下去了。。。我没写DB链接成功的情况。。。都跑不下去,请问这么写对吗?请各位帮忙,谢谢了~
  1. Dim Conn
  2.      Set Conn=createobject ("ADODB.Connection")
  3.      Conn.ConnectionString="DSN=dd;DATABASE=bjtdb;PWD=oracle;SERVER=10.12.30.118;UID=rob"
  4.      Conn.Open ConnectionString
  5.         If  Conn.State=0 Then
  6.             msgbox("!!!!")
  7.             Reporter.ReportEvent micFail,"testing","DB连接失败"
  8.         End If
复制代码

作者: luchao215225    时间: 2012-3-26 11:44
链接中缺少Provider=SQLOLEDB; 数据库类型
作者: lalaine520    时间: 2012-3-26 13:28
本帖最后由 lalaine520 于 2012-3-26 13:30 编辑

回复 2# luchao215225
我+了那句话,但是报错了[attach]78174[/attach]。。求解啊。。
作者: lalaine520    时间: 2012-3-27 09:32
没人来嘛??自己顶。。。。。。。
作者: luchao215225    时间: 2012-3-27 18:02
本帖最后由 luchao215225 于 2012-3-27 18:03 编辑

Set con=createobject("adodb.connection")
Set rs=createobject ("adodb.recordset")
con.Open("Provider=SQLOLEDB; Data Source=192.168.1.8; Initial Catalog=BBDB; User ID=sa; Password=sa;")

我连的SQL数据库.你参考下
作者: 正在更新    时间: 2012-3-28 10:16
1.首先要装数据源驱动 并测试连接DB是否成功
2.我目前用的连接串:
strCn="Driver={MySQL ODBC 5.1 Driver};server="&strDBIP&";database=DBnameort=3306;User=rootassword=root;charset=GBK;"
作者: 正在更新    时间: 2012-3-28 10:16
1.首先要装数据源驱动 并测试连接DB是否成功
2.我目前用的连接串:
strCn="Driver={MySQL ODBC 5.1 Driver};server="&strDBIP&";database=DBnameort=3306;User=rootassword=root;charset=GBK;"
作者: lalaine520    时间: 2012-3-28 14:53
本帖最后由 lalaine520 于 2012-3-28 14:54 编辑

谢谢二位!但是加了PORT 说“链接字符串属性无效”;不加port说“SQL SERVER”不存在或拒绝访问[attach]78213[/attach][attach]78214[/attach]
作者: lalaine520    时间: 2012-3-28 14:55
还有 我用的ORACLE 也得写“Provider=SQLOLEDB”这个么
作者: ZhuCrystal    时间: 2012-3-28 15:25
用oracle不用写;
我的连接代码,给你参考下:
EG:简单代码
Dim Con     //定义变量
Dim rs      //定义变量
Dim conset  //定义变量
conset="rovider=SQLOLEDB.1ersist Security Info=False;User ID=sa;password=123456;Initial Catalog=LMS2.0;Data Source=YANJIN"  //将获得的链接字符串赋值到定义的变量conset中
Set Con=CreateObject("ADODB.Connection")  //生成数据库连接对象
Con.Open conset  //打开数据库
Set rs=CreateObject("ADODB.Recordset")    //生成记录集对象
rs.Open "select userName  from dbo.tbUsers",Con  //书写SQL语句
//条件判断(有读到数据提示Pass,反之提示failed)
If con.State=0 Then         
msgbox"failed"
else
msgbox"pass"
End If
rs.MoveFirst  //将焦点定在第一行
con.close   //关闭数据库连接
Set con=nothing   //清空连接对象
作者: lalaine520    时间: 2012-3-28 15:52
用oracle不用写;
我的连接代码,给你参考下:
EG:简单代码
Dim Con     //定义变量
Dim rs      //定义 ...
ZhuCrystal 发表于 2012-3-28 15:25


那请问DATABASE设置的是在ODBC中建立的数据源么
作者: lalaine520    时间: 2012-3-31 17:15
米解决,自己继续顶。。。。。。。。。
作者: wwoa    时间: 2012-4-1 10:38
Dim Conn
Set Conn=createobject ("ADODB.Connection")
conn.connectionstring="rovider=OraOLEDB.Oracle.1ersist Security Info=False;User ID=system;password=wwoa;Data Source=ORCL"
Conn.Open ConnectionString
If  Conn.State=0 Then
msgbox("!!!!")
Reporter.ReportEvent micFail,"testing","DB连接失败"
End If

你的Conn.ConnectionString写的有问题吧
我把你的改成上面的就可以过了
你自己看着改吧
作者: lalaine520    时间: 2012-4-5 10:00
回复 13# wwoa

按照你的写了:
  1. Dim Conn
  2. Set Conn=createobject ("ADODB.Connection")
  3. Conn.ConnectionString="provider=OraOLEDB.Oracle.1;persist Security Info=False;User ID=rob;password=oracle;Data Source=ORCL"
  4. Conn.Open ConnectionString
  5. If  Conn.State=0 Then
  6. msgbox("!!!!")
  7. Reporter.ReportEvent micFail,"testing","DB连接失败"
  8. End If
复制代码
但是失败了:报异常:
ORA-12154: TNS: 无法处理服务名
Line (4): "Conn.Open ConnectionString".
作者: 026300    时间: 2012-4-6 16:32
本帖最后由 026300 于 2012-4-6 16:34 编辑

我用的是mysql,说说我的做法:首先要安装ODBC,然后添加系统DSN,并测试成功,QTP中使用mysql的代码:
Dim Conn 'as Adodb.Connection
Dim Rst '记录结果
Set Conn = CreateObject("ADODB.Connection")
Conn.ConnectionString="DATABASE=yourDatabasename;DSN=yourDSN;OPTION=0;WD=passwordORT=yourPort;SERVER=IP address;UID=username"
Conn.Open

Set Rst=CreateObject("Adodb.Recordset")
Rst.Open "select * from database.table",Conn
Rst.movefirst
Rst.Close
Conn.Close
Set Rst=Nothing
Set Conn=Nothing

ps 语句中那个笑脸不是我加的
作者: wwoa    时间: 2012-4-17 17:21
回复 14# lalaine520

Data Source的问题
作者: lalaine520    时间: 2012-4-18 15:06
谢谢各位,虽然我知道是Data Source的问题 但还没有解决。。。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2