题目要求
下图为某高学院学生成绩统计信息表,在Mysql数据库student中建立score表,表中字段名如下图所示,name表示姓名,major 表示专业,grade表示平均成绩。
注:Mysql的登录的用户名为root,密码为123,端口3306
1、将下图中数据存储于score表中
2、读取所有数据并打印输出
3、删除成绩小于70分的学生成绩信息
源代码:
import pymysql
import csv
conn = pymysql.connect(host="127.0.0.1",user='root',password='dir99',db='student',port=3306)
cursor=conn.cursor()
sql = "create table score(name char(20) not null ,major varchar(20) null,grade int null,primary key (name))"
cursor.execute(sql)
ls=[]
ls.append(['陈晓','软件工程',92])
ls.append(['李娜','软件工程',86])
ls.append(['赵鹏','软件工程',69])
sql="insert into score(name,major,grade) values('{0}','{1}',{2})"
try:
for line in ls:
cursor.execute(sql.format(*line))
conn.commit()
except:
conn.rollback()
finally:
conn.close()
sql = "select*from score" #打印表格信息
cursor.execute(sql)
rows = cursor.fetchall()
ls1 =list(map(list,rows))
for lis in ls1:
print(lis)
sql="delete from score where grade<70" #删除信息
try:
cursor.execute(sql)
conn.commit()
except:
conn.rollback()
conn.close()