使用脚本向数据库构造测试数据

1.sql语句的使用

2.sql语句变量的格式化输出

sql='''insert into student values(null,'%s',%s,%s,'%s',%s,%s);'''%(name,sage,ssex,hometown,high,class_id)
注意一点,在sql语句中格式化输出,如果汉字的话%S也不要加引号,与其他的格式化输出不同。切记

3.radom随机模块的使用

4.初始化数据库使用

truncate table 表名

不能使用delete from 表名。如果这样的话Id会在上次的基础上增加。


# -*- coding:utf-8 -*-
import random
import MySQLdb
# 打开数据库连接
db=MySQLdb.connect(host="127.0.0.1",user="root",passwd="123456",db="cs",charset="utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()


list_Xing=['赵','钱','孙','李','周','吴','郑','王','冯','陈','褚','卫','蒋','沈','韩','杨','张','李']
list_Ming=['豫','章','故','郡','洪','都','新','府','星','分','翼','轸','地','接','衡','饯','子']
list_Hometown=['北京','河北','河南','天津','海南','兰州','内蒙古','甘肃','西藏','新疆','东北']
#初始化测试数据
# sql1='delete from student;'不能使用delete from 表名。如果这样的话Id会在上次的基础上增加。
sql1='truncate table student;'
try:
    cursor.execute(sql1)
    db.commit()
except:
    db.rollback()



n=0
while n<20:
    n=n+1
    name = random.choice(list_Xing) + random.choice(list_Ming) + random.choice(list_Ming)
    sage=random.randint(15,25)
    ssex=random.randint(1,2)
    hometown=random.choice(list_Hometown)
    high=random.randint(155,190)
    class_id=random.randint(1,6)
    # print name
    sql='''insert into student values(null,'%s',%s,%s,'%s',%s,%s);'''%(name,sage,ssex,hometown,high,class_id)
    print sql
    # sql1 = "insert into student values(null,'{0}',18,1,'北京',175,2);".format(name)
    try:
        cursor.execute(sql)
    except:
        db.rollback()


try:
   # 提交到数据库执行
   db.commit()
except:
   # Rollback in case there is any error 发生错误时回滚
   db.rollback()


# -*- coding:utf-8 -*-
import random
import MySQLdb
# 打开数据库连接
db=MySQLdb.connect(host="127.0.0.1",user="root",passwd="123456",db="cs",charset="utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()


list_Xing=['赵','钱','孙','李','周','吴','郑','王','冯','陈','褚','卫','蒋','沈','韩','杨','张','李']
list_Ming=['豫','章','故','郡','洪','都','新','府','星','分','翼','轸','地','接','衡','饯','子']
list_Hometown=['北京','河北','河南','天津','海南','兰州','内蒙古','甘肃','西藏','新疆','东北']
#初始化测试数据
# sql1='delete from student;'不能使用delete from 表名。如果这样的话Id会在上次的基础上增加。
sql1='truncate table student;'
try:
    cursor.execute(sql1)
    db.commit()
except:
    db.rollback()



n=0
while n<20:
    n=n+1
    name = random.choice(list_Xing) + random.choice(list_Ming) + random.choice(list_Ming)
    sage=random.randint(15,25)
    ssex=random.randint(1,2)
    hometown=random.choice(list_Hometown)
    high=random.randint(155,190)
    class_id=random.randint(1,6)
    # print name
    sql='''insert into student values(null,'%s',%s,%s,'%s',%s,%s);'''%(name,sage,ssex,hometown,high,class_id)
    print sql
    # sql1 = "insert into student values(null,'{0}',18,1,'北京',175,2);".format(name)
    try:
        cursor.execute(sql)
    except:
        db.rollback()


try:
   # 提交到数据库执行
   db.commit()
except:
   # Rollback in case there is any error 发生错误时回滚
   db.rollback()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

做测试的喵酱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值