写一个数据库人事管理系统
时间: 2023-09-30 12:13:00 浏览: 94
好的,下面是一个简单的人事管理系统的示例,使用MySQL数据库和Python编程语言实现。
首先,我们需要创建一个名为“hr_management”的MySQL数据库,并在其中创建两个表格:一个用于存储员工信息,另一个用于存储部门信息。以下是创建表格的SQL代码:
```
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100),
age INT,
department_id INT,
salary FLOAT
);
CREATE TABLE departments (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100),
description VARCHAR(255)
);
```
接下来,我们将使用Python编写一个简单的程序,该程序将连接到数据库并提供以下功能:
1. 添加新员工
2. 更新员工信息
3. 删除员工
4. 显示所有员工信息
以下是示例代码:
```python
import mysql.connector
# 连接到MySQL数据库
db = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="hr_management"
)
# 声明游标对象
cursor = db.cursor()
# 添加新员工
def add_employee(name, age, department_id, salary):
sql = "INSERT INTO employees (name, age, department_id, salary) VALUES (%s, %s, %s, %s)"
val = (name, age, department_id, salary)
cursor.execute(sql, val)
db.commit()
# 更新员工信息
def update_employee(id, name, age, department_id, salary):
sql = "UPDATE employees SET name = %s, age = %s, department_id = %s, salary = %s WHERE id = %s"
val = (name, age, department_id, salary, id)
cursor.execute(sql, val)
db.commit()
# 删除员工
def delete_employee(id):
sql = "DELETE FROM employees WHERE id = %s"
val = (id,)
cursor.execute(sql, val)
db.commit()
# 显示所有员工信息
def show_employees():
sql = "SELECT e.id, e.name, e.age, d.name, e.salary FROM employees e JOIN departments d ON e.department_id = d.id"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row)
# 测试代码
add_employee("John Doe", 25, 1, 5000.0)
add_employee("Jane Smith", 30, 2, 6000.0)
update_employee(2, "Jane Doe", 30, 2, 6500.0)
delete_employee(1)
show_employees()
# 关闭数据库连接
db.close()
```
在以上示例代码中,我们使用了MySQL连接器(mysql.connector)来连接到数据库,并使用游标对象(cursor)执行SQL查询。我们定义了四个函数来执行不同的操作,例如添加新员工,更新员工信息,删除员工和显示所有员工信息。我们还编写了一些测试代码,以演示如何使用这些函数。
请注意,此示例程序仅提供了一些基本功能,并且可以根据需要进行扩展和修改。
阅读全文