以下是一个简单的“病假数据库”的代码示例解决方法:
import sqlite3
def create_database():
conn = sqlite3.connect('sick_leave.db')
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS employees
(id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
department TEXT NOT NULL)''')
c.execute('''CREATE TABLE IF NOT EXISTS sick_leave
(id INTEGER PRIMARY KEY AUTOINCREMENT,
employee_id INTEGER NOT NULL,
start_date TEXT NOT NULL,
end_date TEXT NOT NULL,
FOREIGN KEY (employee_id) REFERENCES employees(id))''')
conn.commit()
conn.close()
def add_employee(name, department):
conn = sqlite3.connect('sick_leave.db')
c = conn.cursor()
c.execute("INSERT INTO employees (name, department) VALUES (?, ?)", (name, department))
conn.commit()
conn.close()
def add_sick_leave(employee_id, start_date, end_date):
conn = sqlite3.connect('sick_leave.db')
c = conn.cursor()
c.execute("INSERT INTO sick_leave (employee_id, start_date, end_date) VALUES (?, ?, ?)", (employee_id, start_date, end_date))
conn.commit()
conn.close()
def get_sick_leave(employee_id):
conn = sqlite3.connect('sick_leave.db')
c = conn.cursor()
c.execute("SELECT * FROM sick_leave WHERE employee_id=?", (employee_id,))
sick_leave = c.fetchall()
conn.close()
return sick_leave
# 创建数据库
create_database()
# 添加员工
add_employee('张三', '人事部')
add_employee('李四', '财务部')
add_employee('王五', '市场部')
# 添加病假记录
add_sick_leave(1, '2021-01-01', '2021-01-03')
add_sick_leave(1, '2021-02-01', '2021-02-03')
add_sick_leave(2, '2021-03-01', '2021-03-03')
# 获取某个员工的病假记录
sick_leave = get_sick_leave(1)
print(sick_leave)
这个示例中,我们使用了SQLite数据库来创建一个包含两个表格的病假数据库。第一个表格是员工表格,包含员工的id、姓名和部门信息。第二个表格是病假表格,包含病假记录的id、员工id、开始日期和结束日期。我们提供了一些基本的函数来添加员工、添加病假记录以及获取某个员工的病假记录。你可以根据自己的需求进行修改和扩展。
上一篇:冰壶图形查询语言
下一篇:并集操作的分摊复杂度