Python数据库编程实现以下功能,数据库选择MySQL。 (1)创建商品数据库commodity,并在其中创建商品信息表info,包含num(商品编号)、cname(商品名称)、brand(品牌)、price(价格)、spokesman(代言人)5个字段,其中num设为主键。 (2)向info表中添加5条记录,将最后一条记录的spokesman字段设置为你的姓名。 (3)查询info表中cname字段为“冰箱”并且price大于2000的所有记录,并输出相关记录信息。 (4)删除info表中price字段值大于5000的所有记录,并显示出删除的记录数量。
时间: 2024-02-28 12:53:30 浏览: 128
好的,以下是Python代码实现上述功能,使用了Python的MySQLdb库进行数据库连接和操作:
```python
import MySQLdb
# 连接MySQL数据库
db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="commodity")
# 创建商品信息表info
cursor = db.cursor()
cursor.execute("CREATE TABLE info (num INT PRIMARY KEY, cname VARCHAR(255), brand VARCHAR(255), price FLOAT, spokesman VARCHAR(255))")
# 添加5条记录
cursor.execute("INSERT INTO info (num, cname, brand, price, spokesman) VALUES (1, '电视', 'LG', 3999.0, '张三')")
cursor.execute("INSERT INTO info (num, cname, brand, price, spokesman) VALUES (2, '空调', '格力', 2599.0, '李四')")
cursor.execute("INSERT INTO info (num, cname, brand, price, spokesman) VALUES (3, '冰箱', '美的', 2999.0, '王五')")
cursor.execute("INSERT INTO info (num, cname, brand, price, spokesman) VALUES (4, '洗衣机', '小天鹅', 1899.0, '赵六')")
cursor.execute("INSERT INTO info (num, cname, brand, price, spokesman) VALUES (5, '电磁炉', '苏泊尔', 599.0, '李七')")
# 将最后一条记录的spokesman字段设置为你的姓名
cursor.execute("UPDATE info SET spokesman = 'Your Name' WHERE num = 5")
# 查询cname字段为“冰箱”并且price大于2000的所有记录,并输出相关记录信息
cursor.execute("SELECT * FROM info WHERE cname = '冰箱' AND price > 2000")
results = cursor.fetchall()
for row in results:
num = row[0]
cname = row[1]
brand = row[2]
price = row[3]
spokesman = row[4]
print("num=%d,cname=%s,brand=%s,price=%.2f,spokesman=%s" % (num, cname, brand, price, spokesman))
# 删除price字段值大于5000的所有记录,并显示出删除的记录数量
cursor.execute("DELETE FROM info WHERE price > 5000")
count = cursor.rowcount
print("删除了%d条记录" % count)
# 提交操作并关闭数据库连接
db.commit()
db.close()
```
注意:在上述代码中,需要将host、user和passwd分别替换为你的MySQL数据库的主机地址、用户名和密码。
阅读全文