python sqlite学生管理系统

sqlite 函数封装学生系管理
import sqlite3

def create_table():
connect = sqlite3.connect(‘testsqlite.db’)
cursor = connect.cursor()
cursor.execute("""
CREATE
TABLE
students
(
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
sex TEXT,
age INTEGER,
phone TEXT
);
“”" )
connect.commit()
cursor.close()
connect.close()

def show_students():

print('行号\t\t姓名\t\t年龄\t\t性别\t\t电话\t\t')
print("------------------------------------")
connect = sqlite3.connect("testsqlite.db")
cursor = connect.cursor()
cursor.execute("""
   SELECT * FROM students;
""")
student_list = cursor.fetchall()  # [(1,小明,年龄,性别,电话)]
for index, student in enumerate(student_list):
    print(f'{index+1}\t\t{student[1]}\t\t{student[2]}\t\t{student[3]}\t\t{student[4]}')
cursor.close()
connect.close()

def add_students():
name = input(‘新学生姓名:’)
sex = input(‘新学生性别:’)
age = input(‘新学生年龄:’)
phone = input(‘新学生电话:’)

connect = sqlite3.connect("testsqlite.db")
cursor = connect.cursor()
# sql = """
#     INSERT INTO students (name,sex, age, phone) VALUES("%s","%s", %s, "%s");""" %(name, sex, int(age),phone)
sql = f"""
    INSERT INTO students (name,sex, age, phone) VALUES("{name}","{sex}","{age}","{phone}");
"""
print(sql)
cursor.execute(sql)
connect.commit()
connect.close()

def uptade_students():
number = int(input(‘要修改第几个学生:’))
new_name = input(‘修改后的姓名是:’)
new_sex = input(‘修改后的性别:’)
new_age = int(input(‘修改后的年龄:’))
new_phone = input(‘修改后的电话;’)

connect = sqlite3.connect("testsqlite.db")
cursor = connect.cursor()
sqli = f"""
       UPDATE students SET name="{new_name}",sex="{new_sex}",age={new_age},phone="{new_phone}" WHERE id={number};
   """

cursor.execute(sqli)
connect.commit()
connect.close()
print('修改成功')

def delete_students():
print(""“请输入子操作编号:
1.按学生编号删除
2.删除全部学生
“””)
num = int(input(‘请选择子操作:’))
if num == 1:
stu_num = int(input(‘要删除第几个学生:’))

    connect = sqlite3.connect("testsqlite.db")
    cursor = connect.cursor()
    cursor.execute(f"""
       DELETE FROM students WHERE id={stu_num-1};
   """)
    connect.commit()
    connect.close()

    print('删除成功')
elif num == 2:
    confirm = input('是否全部删除?(Y/N)')
    if confirm == 'Y' or confirm == 'y':
        connect = sqlite3.connect("testsqlite.db")
        cursor = connect.cursor()
        cursor.execute(f"""
          DELETE FROM students;
       """)
        connect.commit()
        connect.close()

        print('全部删除成功')

def main():
#主函数,程序入口。
while True:
print("""
1-查找学员姓名
2-添加学员姓名
3-修改学员姓名
4-删除学员姓名
0-退出程序""")

    num = int(input('请输入操作编号'))

    if num == 1:
        show_students()
    elif num == 2:
        add_students()
    elif num == 3:
        uptade_students()
    elif num == 4:
        delete_students()
    elif num == 0:
        break

if name == ‘main’:#这种写法含义将会在“包、模块”一节中华介绍。
main()

输出结果
1-查找学员姓名
2-添加学员姓名
3-修改学员姓名
4-删除学员姓名
0-退出程序
请输入操作编号1
行号 姓名 年龄 性别 电话

1 小明 男 17 32454657676
2 小李 男 21 23445545666
3 fghgf fg ggh 56565
4 bfb 34 56 34546677
5 xin nvf fkiv 3245687
6 3

    1-查找学员姓名
    2-添加学员姓名
    3-修改学员姓名
    4-删除学员姓名
    0-退出程序

请输入操作编号2
新学生姓名:小块
新学生性别:男
新学生年龄:12
新学生电话:1243657879989

    INSERT INTO students (name,sex, age, phone) VALUES("小块","男","12","1243657879989");


    1-查找学员姓名
    2-添加学员姓名
    3-修改学员姓名
    4-删除学员姓名
    0-退出程序

请输入操作编号3
要修改第几个学生:2
修改后的姓名是:系 成v
修改后的性别:男
修改后的年龄:23
修改后的电话;21434545666
修改成功

    1-查找学员姓名
    2-添加学员姓名
    3-修改学员姓名
    4-删除学员姓名
    0-退出程序

请输入操作编号4
请输入子操作编号:
1.按学生编号删除
2.删除全部学生

请选择子操作:1
要删除第几个学生:4
删除成功

    1-查找学员姓名
    2-添加学员姓名
    3-修改学员姓名
    4-删除学员姓名
    0-退出程序

请输入操作编号1
行号 姓名 年龄 性别 电话

1 小明 男 17 32454657676
2 fghgf fg ggh 56565
3 bfb 34 56 34546677
4 xin nvf fkiv 3245687
5 3
6 小块 男 12 1243657879989

    1-查找学员姓名
    2-添加学员姓名
    3-修改学员姓名
    4-删除学员姓名
    0-退出程序

请输入操作编号

猜你喜欢

转载自blog.csdn.net/qhy521qhy/article/details/84074380