(1)使用PyMySQL库建立与MySQL的连接,并返回一个db对象。 (2)使用SQL语句创建一个名为course的表,并设置id(编号),coursename(课程名称),teacher(任课教师),coursetype(课程类别),term(开课学期)的字段和属性,并将id设为主键,字符集使用utf8mb4 (3)使用游标cursor执行SQL语句,在数据库管理工具手动添加至少5条数据。 (4)通过PyMySQL向表course查询字段term值大于2的记录,并使用for循环输出所有记录。如果出现异常,则抛出异常信息。
时间: 2023-06-14 11:06:49 浏览: 127
python和mysql交互操作实例详解【基于pymysql库】
以下是代码实现:
```python
import pymysql
# 建立与MySQL的连接
db = pymysql.connect(host='localhost', user='root', password='password', database='test_db', charset='utf8mb4')
# 使用游标执行SQL语句,创建名为course的表
cursor = db.cursor()
sql_create_table = '''CREATE TABLE course (
id INT PRIMARY KEY NOT NULL,
coursename VARCHAR(50) NOT NULL,
teacher VARCHAR(20) NOT NULL,
coursetype VARCHAR(20),
term INT(2) NOT NULL
)charset=utf8mb4;'''
cursor.execute(sql_create_table)
# 添加至少5条数据
sql_insert_data = '''INSERT INTO course (id, coursename, teacher, coursetype, term)
VALUES (1, '数学分析', '张三', '必修', 3),
(2, '线性代数', '李四', '必修', 2),
(3, '计算机组成原理', '王五', '必修', 1),
(4, '计算机网络', '赵六', '选修', 2),
(5, '数据结构', '钱七', '选修', 3);'''
cursor.execute(sql_insert_data)
# 查询字段term值大于2的记录,并输出所有记录
try:
sql_query_data = "SELECT * FROM course WHERE term > 2;"
cursor.execute(sql_query_data)
results = cursor.fetchall()
for row in results:
print("id=%d, coursename=%s, teacher=%s, coursetype=%s, term=%d" % (row[0], row[1], row[2], row[3], row[4]))
except Exception as e:
print(e)
# 关闭游标和数据库连接
cursor.close()
db.close()
```
请注意修改代码中的数据库连接参数,确保可以连接到正确的数据库。
阅读全文