一、robotframework连接mysql数据库

1、安装databaselibrary、pymysql

通过cmd命令执行:pip install robotframework-databaselibrary

cmd命令执行:pip install pymysql

2、导入DatabaseLibrary包到Robotframework

3、使用关键字对数据库进行操作

连接数据库:Connect to database using custom params

这个关键字需要传入2个参数,pymysql、及数据库连接信息(host='数据库ip',port='数据库端口',user='数据库登陆用户名',passwd='密码',db='数据库名(不是表名)')

执行查询语句:Query

执行增删改语句:Execute Sql String

断开数据库连接:Disconnect From Database

注意:sql语句结尾尽量不要用分号,每次连接数据库后都使用断开数据库连接结束

二、robotframework连接Oracle数据库连接

1、安装DatabaseLibrary(见连接mysql数据库操作)

2、安装cx_Oracle,DatabaseLibrary,进入cx_oracle下载页面,下载python对应的版本号:http://sourceforge.net/projects/cx-oracle/files/

下载完后直接安装,安装完成后,在你的 \Python27\Lib\site-packages目录下,可以看到Database Library文件夹和cx_Oracle.pyd文件;

3、将本地连接oracle数据库的oci文件复制到site-packages目录

4、使用关键字进行oracle数据库操作

连接数据库:Connect To Database Using Custom Params;需要传入2个参数;cx_Oracle和数据库连接信息--    '账号','密码','ip:端口/ORCL

查询和修改关键字跟mysql操作相同;

常见问题:

1、数据库查询内容包含[(u')返回值',)]  见下图,[(u'YIN',)]

解决办法:通过截取方式去除:{serID[0][0]}

执行结果:

2、数据库执行sql带中文报错:UnicodeEncodeError:'ascii' codec can't encode characters in position 59-65....

解决办法:新建一个文件sitecustomize.py放到C:\Python27\Lib\site-packages(以你实际的python安装目录为准):

# -*- coding: utf-8 -*-
import sys
import os
import cx_Oracle

reload(sys)
sys.setdefaultencoding('utf-8')
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'

保存后重启robotframework,sql能正常执行;

3、数据库sql语句查询返回乱码:

解决办法:在C:\Python27\Lib\site-packages\DatabaseLibrary\query.py文件中添加如下代码:

def decode(self,code):
        return code.decode('utf-8')

保存后先用python工具编译一下,然后重启robotframework;然后使用decode进行转译;

运行得到中文:

RobotFramework读取mysql和oracle数据库的更多相关文章

  1. 使用hibernate配置多数据源链接MySQL和Oracle数据库

    最近做项目要将读取到的数据同时插入到MySQL数据库和Oracle数据库当中,以前都是使用一个数据库,没有用过多数据源的情况,现在把这个问题搞定了,写下来希望对大家有点帮助,可能我所使用的方法不是最好 ...

  2. JDBC读取新插入Oracle数据库Sequence值的5种方法

    Oracle的sequence实现非常灵活,所以也带来一些易用性问题,如何取到新插入记录生成的sequence值与其它数据库有较大差别,本文详国介绍了5种实现读取新插入记录sequence值的方法. ...

  3. Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)

    Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没必要把 Tomcat 与 IIS 或 Apache 集成起来.在 Tomcat 自带的 ...

  4. MySql和Oracle数据库区别

    Oracle与mysql区别: 1.Oracle有表空间,mysql没有表空间. 2.mysql的char类型取值范围0-255字节,varchar为0-65535字节 3.oracle的char类型 ...

  5. JDBC连接各种数据库的方法,连接MySql,Oracle数据库

    JDBC连接各种数据库的方法: JDBC编程步骤: 1.导入jar包 2.注册驱动 3.获取数据库连接对象 4.定义SQL语句 5.获得执行SQL语句对象statemnet 6.执行SQL语句 7.处 ...

  6. 使用Oracle SQL Developer迁移MySQL至Oracle数据库

    Oracle SQL Developer是Oracle官方出品的数据库管理工具.本文使用Oracle SQL Developer执行从MySQL迁移至Oracle数据库的操作. 2017年3月6日 操 ...

  7. Hibernate 连接MySQL/SQLServer/Oracle数据库的hibernate.cfg.xml文件

    用Hibernate配置连接数据库可以方便我们对POJO的操作,节省了很多时间和代码.下面就分别说明连接不同数据库需要在hibernate.cfg.xml做的配置. 需要数据库驱动包可以点击这里下载: ...

  8. C#通过读取Mysql脚本创建数据库

    #region script helper private bool ExecuteScriptFile(string pathToScriptFile, out string errorMsg) { ...

  9. 读取大csv文件数据插入到MySql或者Oracle数据库通用处理

    import java.io.BufferedInputStream; import java.io.BufferedReader;import java.io.BufferedWriter;impo ...

随机推荐

  1. bzoj4318 OSU!

    传送门 题目 osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n ...

  2. Luogu 4388 付公主的矩形

    还是挺妙的. 发现对于一个$r$行$c$列的矩阵,穿过的格子数$n = r + c - gcd(r, c)$,题目中其实给定了这个$n$,要我们计算满足这个式子的$r$和$c$的个数. 发现$n$一定 ...

  3. 5.Qt model view设计模式

    Introduction to Model/View Programming       QT4 介绍了一系列新的 Item View 类,这些类使用Model/View结构来管理数据和数据如何呈现给 ...

  4. 炫酷实用的CSS3代码垂直手风琴菜单

    今天在微博上看到别人分享的代码,自己拿来自己保存着. 代码效果如下: 下面是源码: index.html <!DOCTYPE html> <html > <head> ...

  5. ubuntu 15.04默认root用户登陆

    1:给root用户设置密码 sudo passwd root 2:修改/etc/lightdm/lightdm.conf [SeatDefaults]autologin-guest=falseauto ...

  6. Altium designer的PCB设计规则

    PCB布线规则,布板需要注意的点很多,但是基本上注意到了下面的这此规则,LAYOUT PCB应该会比较好,不管是高速还是低频电路,都基本如此. 1. 一般规则 1.1 PCB板上预划分数字.模拟.DA ...

  7. GitHub Pages搭建博客HelloWorld版

    1.原理 GitHub作为博客相关文件的托管方,你把按照jekyll规定的目录及文件上传至github库中,通过约定的库名称即可访问到经过jekyll渲染后的博客页面. 2.搭建过程 2.1.注册Gi ...

  8. MongoDB 分片2

    mongodb 在windows下面进行分片 mongodb 更新很快,在做分片的时候,查找了不少文章,但是很多已经过时了.现在把我搭建的过程及命令分享给大家.我用的是最新版本windows版3.4. ...

  9. 读《JavaScript权威指南》笔记(五)

    1.getComputedStyle()方法的返回值是一个CSSStyleDeclaration对象,它代表了应用在指定元素(或伪对象)上的所有样式. 2.clip style="clip: ...

  10. JSONArray.fromObject Date显示问题

    原文链接:http://www.cnblogs.com/Nbge/archive/2012/07/31/2617127.html 使用JSONArray.fromObject,Date类型打出来的完全 ...