• python 将execl测试数据导入数据库操作


    import xlrd
    import pymysql
    
    # 打开execl表
    book = xlrd.open_workbook('XXXX测试用例.xlsx')
    sheet = book.sheet_by_name('Sheet1')
    # print(sheet.nrows)
    
    
    # 创建mysql连接
    conn = pymysql.connect(
        host='127.0.0.1',
        user='root',
        password='123456',
        db='demo1',
        port=3306,
        charset='utf8'
    
    )
    
    # 获得游标
    cur = conn.cursor()
    
    # 创建插入语句
    query = 'insert into yongsheng(UseCaseNumber, TestIteam, TestSubItem,' 
            'Testoint, Precondition, ExecutionSteps,' 
            'ExpectedResults, ActualResult, Adopt,' 
            'DesignDate, ConclusionDate, Testers)values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)'
    
    # 创建一个for循环迭代读取xls文件每行数据的,
    # 从第二行开始是要跳过标题行
    # 括号里面1表示从第二行开始(计算机是从0开始数)
    for r in range(1, sheet.nrows):
        # (r, 0)表示第二行的0就是表里的A1:A1
        UseCaseNumber = sheet.cell(r, 0).value
        TestIteam = sheet.cell(r, 1).value
        TestSubItem = sheet.cell(r, 2).value
        Testoint = sheet.cell(r, 3).value
        Precondition = sheet.cell(r, 4).value
        ExecutionSteps = sheet.cell(r, 5).value
        ExpectedResults = sheet.cell(r, 6).value
        ActualResult = sheet.cell(r, 7).value
        Adopt = sheet.cell(r, 8).value
        DesignDate = sheet.cell(r, 9).value
        ConclusionDate = sheet.cell(r, 10).value
        Testers = sheet.cell(r, 11).value
        values = (UseCaseNumber, TestIteam, TestSubItem,
                  Testoint, Precondition, ExecutionSteps,
                  ExpectedResults, ActualResult, Adopt,
                  DesignDate, ConclusionDate, Testers)
    
        # 插入数据库
        try:
            # 检查db连接状态
            conn.ping(reconnect=True)
            cur.execute(query, values)
        except Exception as e:
            # 有异常,回滚事务
            conn.rollback()
        finally:
            conn.close()
    
    # 显示导入多少列
    columns = str(sheet.ncols)
    # 显示导入多少行
    rows = str(sheet.nrows)
    print('导入' + columns + '列' + rows + '行数据到MySQL数据库!')
    
  • 相关阅读:
    hihoCoder[Offer收割]编程练习赛1题目解析
    你的计划为什么运行不下去?怎么破?
    Activity的生命周期
    leetcode——Lowest Common Ancestor of a Binary Tree
    Spring学习笔记(四)-- Spring事务全面分析
    Docker技术-cgroup
    docker高级应用之cpu与内存资源限制(转)
    JMX 学习
    如何使用JVisualVM进行性能分析
    如何利用 JConsole观察分析Java程序的运行,进行排错调优(转)
  • 原文地址:https://www.cnblogs.com/se7enjean/p/12703795.html
Copyright © 2020-2023  润新知