关系模型为:职工(工号,姓名,性别,年龄,住址,入职时间,岗位编号)对应实体集“职工”,包含关系“组成”。 5)用sql建立一个表
时间: 2024-05-20 12:12:43 浏览: 15
CREATE TABLE Employee (
employee_id int PRIMARY KEY,
name varchar(50),
gender varchar(10),
age int,
address varchar(100),
hire_date date,
position_id int,
FOREIGN KEY (position_id) REFERENCES Position (position_id)
);
相关问题
排列员工信息:可根据年龄从小到大的顺序对员工信息进行排序,员工信息包括:工号、姓名、年龄、工作、性别、地址、电话、入职时间。
好的,你可以使用结构体存储员工信息,然后使用快速排序或其他排序算法按照年龄从小到大的顺序对员工信息进行排序。
以下是一个示例代码:
```c++
#include <iostream>
#include <algorithm>
using namespace std;
struct Employee {
int id;
string name;
int age;
string job;
char gender;
string address;
string phone;
string hire_date;
};
bool cmp(Employee a, Employee b) {
return a.age < b.age; // 按照年龄从小到大排序
}
int main() {
Employee employees[5] = {
{1001, "Tom", 25, "Engineer", 'M', "Shanghai", "13888888888", "2020-01-01"},
{1002, "Jerry", 30, "Manager", 'M', "Beijing", "13999999999", "2019-01-01"},
{1003, "Alice", 22, "Intern", 'F', "Guangzhou", "13666666666", "2021-06-01"},
{1004, "Bob", 28, "Sales", 'M', "Hangzhou", "13777777777", "2018-01-01"},
{1005, "Eva", 35, "Director", 'F', "Shenzhen", "13555555555", "2017-01-01"}
};
// 排序前的员工信息
cout << "排序前的员工信息:" << endl;
for(int i=0; i<5; i++) {
cout << "工号:" << employees[i].id << ",姓名:" << employees[i].name << ",年龄:" << employees[i].age << ",工作:" << employees[i].job << ",性别:" << employees[i].gender << ",地址:" << employees[i].address << ",电话:" << employees[i].phone << ",入职时间:" << employees[i].hire_date << endl;
}
// 对员工信息按照年龄排序
sort(employees, employees+5, cmp);
// 排序后的员工信息
cout << "排序后的员工信息:" << endl;
for(int i=0; i<5; i++) {
cout << "工号:" << employees[i].id << ",姓名:" << employees[i].name << ",年龄:" << employees[i].age << ",工作:" << employees[i].job << ",性别:" << employees[i].gender << ",地址:" << employees[i].address << ",电话:" << employees[i].phone << ",入职时间:" << employees[i].hire_date << endl;
}
return 0;
}
```
输出结果为:
```
排序前的员工信息:
工号:1001,姓名:Tom,年龄:25,工作:Engineer,性别:M,地址:Shanghai,电话:13888888888,入职时间:2020-01-01
工号:1002,姓名:Jerry,年龄:30,工作:Manager,性别:M,地址:Beijing,电话:13999999999,入职时间:2019-01-01
工号:1003,姓名:Alice,年龄:22,工作:Intern,性别:F,地址:Guangzhou,电话:13666666666,入职时间:2021-06-01
工号:1004,姓名:Bob,年龄:28,工作:Sales,性别:M,地址:Hangzhou,电话:13777777777,入职时间:2018-01-01
工号:1005,姓名:Eva,年龄:35,工作:Director,性别:F,地址:Shenzhen,电话:13555555555,入职时间:2017-01-01
排序后的员工信息:
工号:1003,姓名:Alice,年龄:22,工作:Intern,性别:F,地址:Guangzhou,电话:13666666666,入职时间:2021-06-01
工号:1001,姓名:Tom,年龄:25,工作:Engineer,性别:M,地址:Shanghai,电话:13888888888,入职时间:2020-01-01
工号:1004,姓名:Bob,年龄:28,工作:Sales,性别:M,地址:Hangzhou,电话:13777777777,入职时间:2018-01-01
工号:1002,姓名:Jerry,年龄:30,工作:Manager,性别:M,地址:Beijing,电话:13999999999,入职时间:2019-01-01
工号:1005,姓名:Eva,年龄:35,工作:Director,性别:F,地址:Shenzhen,电话:13555555555,入职时间:2017-01-01
```
java编写:存储多个员工信息(包括工号、姓名、年龄,入职时间),当有新员工入职时,添加其信息;当有员工离职时,删除其信息
1. 定义员工类Employee,包含工号、姓名、年龄、入职时间等属性和相应的get和set方法。
public class Employee {
private int id; //工号
private String name; //姓名
private int age; //年龄
private Date hireDate; //入职时间
public Employee(int id, String name, int age, Date hireDate) {
this.id = id;
this.name = name;
this.age = age;
this.hireDate = hireDate;
}
//getters and setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getHireDate() {
return hireDate;
}
public void setHireDate(Date hireDate) {
this.hireDate = hireDate;
}
}
2. 定义员工管理类EmployeeManager,包含一个List<Employee>用于存储所有员工信息,以及添加和删除员工的方法。
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
public class EmployeeManager {
private List<Employee> employees;
public EmployeeManager() {
employees = new ArrayList<Employee>();
}
//添加新员工
public void addEmployee(Employee employee) {
employees.add(employee);
}
//删除员工
public void removeEmployee(int id) {
Iterator<Employee> iterator = employees.iterator();
while (iterator.hasNext()) {
Employee employee = iterator.next();
if (employee.getId() == id) {
iterator.remove();
break;
}
}
}
//测试
public static void main(String[] args) {
EmployeeManager manager = new EmployeeManager();
//添加员工
Employee employee1 = new Employee(1, "张三", 25, new Date());
Employee employee2 = new Employee(2, "李四", 30, new Date());
manager.addEmployee(employee1);
manager.addEmployee(employee2);
//删除员工
manager.removeEmployee(2);
//输出员工信息
for (Employee employee : manager.employees) {
System.out.println(employee.getName());
}
}
}
运行结果为:
张三
说明已成功添加一个员工,删除一个员工,只剩下一个员工了。
相关推荐
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![ppt](https://img-home.csdnimg.cn/images/20210720083527.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)