pip install pymysql
pip install faker
import pymysql
import random
from faker import Faker
# 连接到数据库
mydb = pymysql.connect(
host="localhost",
user="root",
password="032100",
database="stu_qinfengmin"
)
# 创建cursor对象
mycursor = mydb.cursor()
fake = Faker("zh_CN")
name_set = set()
# 执行2000条SQL语句
for i in range(2000):
while True:
Sname = fake.name()
if Sname not in name_set:
name_set.add(Sname)
break
else:
continue
Sno = str(2008000000 + i)
Ssex = random.choice(['女', '男'])
Sage = fake.random_int(min=18, max=25)
Sdept=random.choice(['CS','art','MA','IS'])
# 组装SQL语句
sql = "INSERT INTO student_qfm (`Sno`, `Sname`, `Ssex`, `Sage`, `Sdept`) VALUES ('{}','{}','{}','{}','{}')".format(Sno,Sname, Ssex, Sage, Sdept)
#values = (Sno,Sname, Ssex, Sage, Sdept)
# 执行SQL语句
mycursor.execute(sql)
# 提交更改
mydb.commit()
# 关闭连接
mycursor.close()
mydb.close()
import pymysql
import random
# 连接到数据库
mydb = pymysql.connect(
host="localhost",
user="root",
password="032100",
database="stu_qinfengmin"
)
mycursor = mydb.cursor()
for i in range(2000):
# 生成随机的课程号
Cno =int(1+i)
# 生成随机的课程名
Cname='Course '+str({i+1})
# 生成随机的先修课号
Cpno =random.randint(1, i+1)
# 生成随机的学分
Ccredit = random.choice([1, 2, 3, 4])# {i%4+1}
course_data = (Cno, Cname, Cpno, Ccredit)
sql = "INSERT INTO course_qfm (Cno, Cname, Cpno, Ccredit) VALUES (%s, %s, %s, %s)"
mycursor.execute(sql, course_data)
sql1="UPDATE course_qfm SET Cpno = NULL WHERE Cno = Cpno"
mycursor.execute(sql1)
mydb.commit()
# 关闭连接
mycursor.close()
mydb.close()
import pymysql
import random
from datetime import datetime, timedelta
# 生成随机时间
def random_time():
start = datetime(2009, 3, 1, 0, 0, 0)
end = datetime(2009, 3, 16, 0, 0, 0)
delta = end - start
int_delta = (delta.days * 24 * 60 * 60) + delta.seconds
random_second = random.randrange(int_delta)
return start + timedelta(seconds=random_second)
# 连接数据库
db = pymysql.connect(host="localhost", user="root", password="032100", database="stu_qinfengmin")
cursor = db.cursor()
# 插入数据到sc表
for i in range(100000):
grade=random.randint(0,101)
sno=random.randint(2008000000,2008002001)
cno=random.randint(1,2001)
sql= "INSERT INTO sc_qfm (sno, cno, grade, CHOOSE_TIME)VALUES(%s, %s, %s,%s)"
values=(sno, cno, grade,random_time())
# 先检查是否存在重复的sno和cno的对应关系
check_query = "SELECT * FROM sc_qfm WHERE sno = %s AND cno = %s"
cursor.execute(check_query, (sno, cno))
result = cursor.fetchone()
# 如果不存在则插入数据
if not result:
insert_query = "INSERT INTO sc_qfm (sno, cno, grade, CHOOSE_TIME)VALUES(%s, %s, %s,%s)"
cursor.execute(insert_query, (sno, cno, grade, random_time()))
db.commit()
db.close()