写代码实现宿舍管理员管理:能够添加管理员用户、删除管理员用户信息、查找管理员信息、修改管理员信息。并建立数据库
时间: 2023-08-04 16:05:29 浏览: 238
好的,我可以帮你写一个简单的 Python 代码来实现宿舍管理员管理的功能,并使用 SQLite 数据库来存储管理员信息。在这个代码中,我们定义了一个 `DormManager` 类来管理管理员信息,包括添加、删除、查找和修改管理员信息。以下是代码实现:
```python
import sqlite3
class DormManager:
def __init__(self):
self.conn = sqlite3.connect('dorm_manager.db')
self.cur = self.conn.cursor()
self.cur.execute('CREATE TABLE IF NOT EXISTS managers (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, phone TEXT, email TEXT)')
def add_manager(self, name, phone, email):
self.cur.execute("INSERT INTO managers (name, phone, email) VALUES (?, ?, ?)", (name, phone, email))
self.conn.commit()
def delete_manager(self, id):
self.cur.execute("DELETE FROM managers WHERE id=?", (id,))
self.conn.commit()
def find_manager(self, id):
self.cur.execute("SELECT * FROM managers WHERE id=?", (id,))
return self.cur.fetchone()
def update_manager(self, id, name=None, phone=None, email=None):
if name is not None:
self.cur.execute("UPDATE managers SET name=? WHERE id=?", (name, id))
if phone is not None:
self.cur.execute("UPDATE managers SET phone=? WHERE id=?", (phone, id))
if email is not None:
self.cur.execute("UPDATE managers SET email=? WHERE id=?", (email, id))
self.conn.commit()
def close(self):
self.cur.close()
self.conn.close()
if __name__ == '__main__':
manager = DormManager()
manager.add_manager('John', '1234567890', 'john@example.com')
manager.add_manager('Amy', '0987654321', 'amy@example.com')
print(manager.find_manager(1))
manager.update_manager(1, name='Jack')
print(manager.find_manager(1))
manager.delete_manager(2)
manager.close()
```
在这个代码中,我们定义了一个 `DormManager` 类,并在构造函数中初始化了一个 SQLite 数据库。我们使用 SQLite 数据库来存储管理员信息,通过 `CREATE TABLE` 语句来创建一个名为 `managers` 的表来存储管理员信息。表中包含 `id`、`name`、`phone` 和 `email` 四个字段,其中 `id` 字段是自增长的主键。
`add_manager` 方法用来添加管理员信息,接收 `name`、`phone` 和 `email` 三个参数,并将这些信息插入到 `managers` 表中。
`delete_manager` 方法用来删除管理员信息,接收 `id` 参数,并根据 `id` 删除指定的管理员信息。
`find_manager` 方法用来查找管理员信息,接收 `id` 参数,并根据 `id` 查找指定的管理员信息。
`update_manager` 方法用来更新管理员信息,接收 `id` 参数和可选的 `name`、`phone`、`email` 参数。根据 `id` 更新指定管理员的信息,如果参数为 `None` 则不更新对应字段。
最后,我们在 `__main__` 函数中创建一个 `DormManager` 对象,并测试了添加、查找、更新和删除管理员信息的功能。最后,我们调用 `close` 方法关闭数据库连接。
注意:这只是一个简单的实现,实际项目中需要考虑更多的安全性和错误处理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.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)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)