Description
将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。
Analysis
这道题是送分题,就是让人熟悉一下链接数据库以及mysql的使用。
Solution
import pymysql
import random
import string
def generate(length):
s = ''.join(random.sample(string.ascii_uppercase + string.digits, length))
return s
if __name__ == '__main__':
# print("请输入激活码的长度: ")
# length = int(input())
# print("请输入激活码的数目: ")
# num = int(input())
length = 10
num = 200
# 链接数据库
db = pymysql.connect(host="localhost", port=3306, user="root", password="root", db="three")
# 使用cursor()方法创建一个游标对象cursor
cursor = db.cursor()
# SQL 插入语句
# 使用execute()方法执行SQL语句
try:
for i in range(num):
# 执行mysql
sql = "insert into py_3 values('" + generate(length) + "')"
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 如果发生错误就回滚
db.rollback()
print("wrong")
# 关闭数据库
db.close()