A21873. 数据库操作编写一个Python程序,实现以下功能:(1)连接到SQLite数据库company.db;(2)创建一个名为"employees"的表,包含id(主键)、name、salary字段;(3)插入3条员工记录;(4)查询并打印所有salary大于5000的员工;(5)更新其中一条记录的salary;(6)删除一条记录。请根据要求,补全代码。(本题无需运行通过,写入代码即可)import …
填空题
困难
知识点
题目描述
数据库操作
编写一个Python程序,实现以下功能:
(1)连接到SQLite数据库company.db;
(2)创建一个名为"employees"的表,包含id(主键)、name、salary字段;
(3)插入3条员工记录;

(4)查询并打印所有salary大于5000的员工;
(5)更新其中一条记录的salary;
(6)删除一条记录。
请根据要求,补全代码。
(本题无需运行通过,写入代码即可)
import sqlite3
conn = sqlite3. _______①________('company.db')
cursor = conn.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
id id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
salary REAL
)
''')
_______② __________
cursor.executemany('INSERT INTO employees VALUES(?,?,?)'',_________③_________)
conn.commit()
print("薪资大于5000的员工:")
cursor.execute('SELECT * FROM employees
WHERE ________④ ________')
for row in ________⑤__________:
print(row)
cursor.execute(' UPDATE employees SET salary = 5500 WHERE id = 1')
conn.commit()
cursor.execute('DELETE FROM employees WHERE id = 2')
conn.commit()
conn.close() 参考答案
import sqlite3
conn = sqlite3.connect('company.db')
cursor = conn.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
salary REAL
)
''')
employees = [
(1, '张三', 6000),
(2, '李四', 4500),
(3, '王五', 8000)
]
cursor.executemany('INSERT INTO employees VALUES(?,?,?)', employees)
conn.commit()
print("薪资大于5000的员工:")
cursor.execute('SELECT * FROM employees WHERE salary > 5000')
for row in cursor.fetchall() :
print(row)
cursor.execute('UPDATE employees SET salary = 5500 WHERE id = 1')
conn.commit()
cursor.execute('DELETE FROM employees WHERE id = 2')
conn.commit()
conn.close() 答案解析
评分标准:
(1)connect(或等效答案);(2分)
(2)employees = [(1, '张三', 6000), (2, '李四', 4500),(3, '王五', 8000)](或等效答案);(2分)
(3)employees(或等效答案);(2分)
(4)salary > 5000(或等效答案);(2分)
(5)cursor.fetchall()(或等效答案)(2分)
上一题
下一题