因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装)

#-*- coding: utf-8 -*-

import MySQLdb, datetime, time
#code数字含义
code_mean = {10:"开始下载(10)",
11:"下载完成(11)",
12:"安装界面(12)",
13:"安装成功(13)",
14:"启动游戏(14)",
16:"更新开始(16)"}
#Networktype数字含义
network_type_mean = {1:"3G 网络",
2:"2G 网络",
3:"WIFI网络"}
#当前测试人员拥有手机
phonelist = {1:"0049990********", 2:"8689430********", 3:"3558680********"}
#当前系统时间
nowtime = (datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S'))
print "当前时间:" + nowtime
today = str(nowtime).split()[0]
#去除日期
HMS = nowtime.split()[1] print "目前测试人员拥有的手机如下:"
print "HTC *** :1"
print "HTC **** :2"
print "HUAWEI ***** :3" phont_imei = raw_input("请选择你要查询的手机,输入上列手机对应的数字即可:")
time_start = raw_input("请输入需要查询的起始时间(格式如后:" + HMS + ",默认日期为今天): ")
imei = phonelist[int(phont_imei)]
#查询开始时间
starttime = datetime.datetime.now() print "开始连接数据库......"
try:
db = MySQLdb.connect(host="***.***.***.***", port=****, user="****", passwd="****", db="****")
cursor = db.cursor()
print "数据库连接成功,开始进行查询......"
cursor.execute('''SELECT
****,
****,
****,
****,
****
from ****
WHERE
**** = \'''' + imei + '''\' AND
**** > \'''' + today + " " + time_start + '''' AND
**** IN (10, 11, 12,13,14,16)
ORDER BY
**** DESC
''')
result = cursor.fetchall()
print "已获取查询结果,开始断开数据库连接....."
cursor.close()
db.close()
except MySQLdb.Error,e:
print "Mysql Error %d: %s" % (e.args[0], e.args[1])
else:
print "断开数据库连接成功,开始展示查询结果......"
if bool(result) != True:
print "( ⊙ o ⊙ )啊哦,竟然没有查询到数据结果,请检查下查询时间"
else:
#对查询出的数据进行处理,方便查看
print ""
print "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
i = 0
for record in result:
sqldata = result[i]
time = sqldata[0]
code = sqldata[1]
name = sqldata[2]
networktype = sqldata[4]
print network_type_mean[int(networktype)] + \
" " + str(time).split()[1] + \
" " + code_mean[int(code)] + \
" " + name
i += 1
print "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
#结果展示时间
endtime = datetime.datetime.now()
wast_time = (endtime - starttime).seconds
print "本次查询总共耗时:" + str(wast_time) + " 秒 " + "查询手机IMEI:" + phonelist[int(phont_imei)]

  目前脚本的缺点是只能进行一次性查询,之后再进行优化使之能进行多次查询后再断开数据库连接

【初学python】使用python连接mysql数据查询结果并显示的更多相关文章

  1. java连接mysql数据查询数据

    package com.cn.peitest.connectDatabase; import java.sql.Connection; import java.sql.DriverManager; i ...

  2. python连接mysql数据表查询表获取数据导入到txt中

    import pymysql'''连接mysql数据表查询表获取数据导入到txt中'''#查询结果写入数据到txtdef get_loan_number(file_txt): connect = py ...

  3. EF连接MySQL数据Web.Config配置

    EF连接MySQL数据Web.Config配置 <?xml version="1.0" encoding="utf-8"?> <configu ...

  4. Python 3.5 连接Mysql数据库(pymysql 方式)

    由于 MySQLdb 模块还不支持 Python3.x,官方的Mysql连接包只支持到3.4,所以 Python3.5 如果想连接MySQL需要安装 pymysql 模块. pymysql 模块可以通 ...

  5. python 3.5 连接mysql数据库

    python 3.5 要连接mysql数据库,必须先安装pymysql模块,该模块可以操作mysql数据. 1.安装pymysql模块:使用pip进行安装 cmd打开运行模式,切换目录到pip的scr ...

  6. 【Python】Windows平台下Python、Pydev连接Mysql数据库

    Mysql数据库是跨平台的,不是说Python一定就要连接Mongodb. Python连接Mysql数据库是非常easy的. 首先,你要配置好Python的开发环境,详见<[Python]Wi ...

  7. Python 使用pymysql连接MySQL

    由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 pymysql 模块. pymysql 模块可以通过 pip 安装.但如果你使用的是 p ...

  8. python使用sqlalchemy连接mysql数据库

    环境:centos7+python2.7.5+sqlalchemy sqlalchemy是python当中比较出名的orm程序.在python中,使用sqlalchemy连接mysql数据库进行操作非 ...

  9. python 基础 9.3 mysql 数据操作

    #/usr/bin/python #coding=utf-8 #@Time   :2017/11/21 0:20 #@Auther :liuzhenchuan #@File   :mysql 数据操作 ...

随机推荐

  1. ZIP压缩算法详细分析及解压实例解释

    最近自己实现了一个ZIP压缩数据的解压程序,觉得有必要把ZIP压缩格式进行一下详细总结,数据压缩是一门通信原理和计算机科学都会涉及到的学科,在通信原理中,一般称为信源编码,在计算机科学里,一般称为数据 ...

  2. 【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 先贴错误: 吐槽一下: 进入正题: 新建一个同名数据库 停止MSSQL服务 替换数据库文 ...

  3. OpenGL超级宝典笔记----渲染管线

    在OpenGL中任何事物都在3D空间中,但是屏幕和窗口是一个2D像素阵列,所以OpenGL的大部分工作都是关于如何把3D坐标转变为适应你屏幕的2D像素.3D坐标转为2D坐标的处理过程是由OpenGL的 ...

  4. CSS 3学习——transform 2D转换

    首先声明一点,transform属性不为none的元素是它的定位子元素(绝对定位和固定定位)的包含块,而且对内创建一个新的层叠上下文. 注意:可以通过 transform-box 属性指定元素的那个盒 ...

  5. maven依赖查询地址

    http://search.maven.org/#search%7Cga%7C1%7C

  6. java web学习总结(五) -------------------servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  7. 使用github远程仓库

    经过几天对github的研究,终于把自己想完成的给解决了,发现google真的有很多解释,但是很多也会出现一些bug,对于初学者真的很多烦恼,所以整理一份,能给初识github的你有所帮助 一,首先, ...

  8. Windows更新清理工具 (winsxs 清理工具)

    Windows 更新清理工具是一款效果非常显著的Windows7.Windows8操作系统清理优化工具!经常安装系统的朋友相比有所体会,刚刚安装完成的Win7.Win8其实占的空间并不大,去掉页面文件 ...

  9. 带你一分钟理解闭包--js面向对象编程

    上一篇<简单粗暴地理解js原型链--js面向对象编程>没想到能攒到这么多赞,实属意外.分享是个好事情,尤其是分享自己的学习感悟.所以网上关于原型链.闭包.作用域等文章多如牛毛,很多文章写得 ...

  10. 集成基于CAS协议的单点登陆

    相信大家对单点登陆(SSO,Single Sign On)这个名词并不感到陌生吧?简单地说,单点登陆允许多个应用使用同一个登陆服务.一旦一个用户登陆了一个支持单点登陆的应用,那么在进入其它使用同一单点 ...