编写一个基于SQLite3的通讯录管理系统。 本系统能实现添加记录、修改记录、删除记录、查询记录基本功能。
时间: 2024-01-14 13:02:35 浏览: 51
好的,下面是一个基于SQLite3的通讯录管理系统的示例代码:
```python
import sqlite3
# 连接到数据库
conn = sqlite3.connect('contacts.db')
# 创建表格
conn.execute('''CREATE TABLE IF NOT EXISTS CONTACTS
(ID INTEGER PRIMARY KEY AUTOINCREMENT,
NAME TEXT NOT NULL,
PHONE TEXT NOT NULL,
EMAIL TEXT);''')
# 添加记录
def add_contact(name, phone, email):
conn.execute("INSERT INTO CONTACTS (NAME, PHONE, EMAIL) \
VALUES (?, ?, ?)", (name, phone, email))
conn.commit()
print("Record created successfully")
# 修改记录
def update_contact(id, name, phone, email):
conn.execute("UPDATE CONTACTS SET NAME = ?, PHONE = ?, EMAIL = ? WHERE ID = ?", (name, phone, email, id))
conn.commit()
print("Record updated successfully")
# 删除记录
def delete_contact(id):
conn.execute("DELETE FROM CONTACTS WHERE ID = ?", (id,))
conn.commit()
print("Record deleted successfully")
# 查询记录
def search_contact(name):
cursor = conn.execute("SELECT * FROM CONTACTS WHERE NAME = ?", (name,))
for row in cursor:
print("ID = ", row[0])
print("NAME = ", row[1])
print("PHONE = ", row[2])
print("EMAIL = ", row[3])
# 测试
add_contact("Tom", "123456789", "tom@example.com")
add_contact("Jerry", "987654321", "jerry@example.com")
search_contact("Tom")
update_contact(1, "Tommy", "111111111", "tommy@example.com")
search_contact("Tommy")
delete_contact(2)
```
上述代码创建了一个名为 `CONTACTS` 的表格,其中包含 `ID`、`NAME`、`PHONE` 和 `EMAIL` 四个字段。接着定义了 `add_contact`、`update_contact`、`delete_contact` 和 `search_contact` 四个函数,分别用于添加记录、修改记录、删除记录和查询记录。
最后进行了一些测试,添加了两个联系人 Tom 和 Jerry,查询了 Tom 的信息,将 Tom 的名字修改为 Tommy,查询了 Tommy 的信息,然后删除了 Jerry 的信息。
你可以根据自己的需要修改表格的结构和函数的具体实现。
阅读全文