robot framework-databaselibaray库使用(python)(转)
发布日期:2021-09-08 15:09:39 浏览次数:11 分类:技术文章

本文共 1586 字,大约阅读时间需要 5 分钟。

  公司做项目用到了databaselibaray,刚开始使用时碰到了很多问题,网上也查阅了很多资料终于是可以用了,现在整理记录下来,有需要的同学可随意使用:

另,本文主要是databaselibaray的使用,RF环境搭建可以看我另一篇:

1、databaselibaray环境准备:

  a)     安装cx_Oracle: 

  b)     安装DBlibrary: 

  c)     安装oracle(以下两个选一个即可):

                 i.          安装oracle客户端:http://www.oracle.com/

                ii.          安装instant client: 

 

注意:cx_Oracle的版本要与oracle的版本一致

 

二、使用DBLibrary 

Connect To Database Using Custom Params    cx_Oracle    'scott','tiger','oral'    @{data}    query    select * from dept    log many    @{data}    log    ${data[0][1]}    ${row}    row count    select * from dept    log    ${row}    ${count}    Get length    ${data}    log    ${count}    Execute Sql String      delete from dept d where d.id='1'    Disconnect From Database

说明:

1、 Connect To Database Using Custom Params:

  a)     第一个参数我使用的是cx_Oracle,就写这个

  b)     第二个参数由三部分组成:user,pwd,tns

2、关于tns多说两句:我安装的是oracle客户端,可以在oracle安装目录\network\admin\tnsnames.ora中配置你的TNS,我的如下:

  • oral=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.10)(PORT = 1526)) (connect_data = (sid =oral)))

因为我的tnsnames.ora文件配置了tns所以使用时可以直接使用它的sid即oral。如果没有配置的话,直接使用(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.10)(PORT = 1526)) (connect_data = (sid =oral)))代替上面例子中的oral也是可以的。

 

三、遇到的阻碍问题及解决办法:

在家里使用DBLibrary时没有任何问题,但是到公司用时出问题了,主要有以下两个问题,折腾了好久:

  1、 ImportError: DLL load failed:这个问题把oci.dll拷贝到python的Lib\site-packages目录下就可以解决。

  2、 InterfaceError: Unable to acquire Oracle environment handle:这个问题需要拷贝另外两个dll: oraocci11.dll和oraociei11.dll

 

 

参考:

http://www.51testing.com/html/15/246015-853524.html

http://blog.sina.com.cn/s/blog_654c6ec70100u9fr.html

http://www.cnblogs.com/puresoul/p/3868638.html

转载地址:https://blog.csdn.net/weixin_34326429/article/details/90281099 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:可执行的移动端网站seo技术
下一篇:微服务网关解决方案调研和使用总结

发表评论

最新留言

不错!
[***.144.177.141]2024年04月13日 05时24分43秒