1. 题目
第 0002 题:将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL关系型数据库中。
2.实现
step 1:安装MySQL(按解压免安装版本介绍)
step 2:运行MySQL
#cmd进入MySQL解压bin目录
cd %解压文件bin目录%
#安装MySQL服务,启动服务
mysqld -nt -install
net start mysql
#登陆
mysql -u root -p
Enter your password:
Welcome to the MySQL monitor...
step 3:安装mysqlclient库
pip install mysqlclient
step 4:编程实现
# -*- coding:utf-8 -*-
import uuid
import MySQLdb
def create_code(num, length):
result = []
for i in range(0, num):
code_str = str(uuid.uuid4()).replace('-', '')[:length].upper()
for j in range(4, length, 5):
code_str = code_str[:j] + '-' + code_str[j:]
if code_str not in result:
result.append(code_str)
return result
def save_code(code_result):
if len(code_result) == 0:
return
db = MySQLdb.connect(user="root", passwd="", db="code")
cursor = db.cursor()
cursor.execute("show tables in `code`")
tables = cursor.fetchall()
if ('code',) in tables:
print("Create table 'code' already.")
else:
cursor.execute("create table code(id int auto_increment primary key, code varchar(20));")
for i in range(len(code_result)):
cursor.execute("insert into code(code) values(%s);", (code_result[i],))
cursor.close()
db.commit()
db.close()
if __name__ == '__main__':
save_code(create_code(20, 16))
3. 解决问题
<i>I. 安装mysqlclient出现error: Unable to find vcvarsall.bat</i>
- 安装wheel
pip install wheel
- 在这里下载库所对应的.whl文件,善用Ctrl+F
- 根据python版本下载对应的文件,例如python35下载包含cp35的即可
- 进入XX.whl文件所在的文件夹,执行
pip install XX.whl
<i>II. 向数据库写入中文时出现乱码</i>
网友评论