Python学习(一):数据库sqlite3的增删改查
以学生的信息进行举例
sqlite3界面如下
查 select
def select_student():
"""
查询学员信息的函数
:return: None
"""
# for index, info_list in enumerate(all_stu_list):
# print(index + 1, '.', info_list[0], info_list[1])
conn = sqlite3.connect('student.db')
cursor = conn.cursor()
cursor.execute('select * from stu')
res = cursor.fetchall()
for line in res:
# or f in line:
print(line)
print('\n学员信息查询完成\n')
cursor.close()
conn.close()
查询结果
增加信息add
def add_student(sname, sage):
"""
该函数是用于添加学员信息的函数
:return: None
"""
# sname = input('输入学员姓名:')
# age = int(input('输入学员年龄:'))
conn = sqlite3.connect('student.db')
cursor = conn.cursor()
cursor.execute("insert into stu(name ,age)"
"values ('%s', '%s')"%(sname, sage))
conn.commit()
# s_list = [s_name, s_age]
# all_stu_list.append(s_list)
print('\n学员信息添加完成\n')
cursor.close()
conn.close()
insert 语句需要注意写法,我查了30分钟,唉,使用占位符
删除delete
def delete_student():
"""
删除学员信息函数
:return:
"""
conn = sqlite3.connect('student.db')
cursor = conn.cursor()
print('''
1-根据序号删除学员信息
2-根据学院名称删除学员信息
3-删除所有学员信息
''')
number = int(input('请选择操作:'))
while number < 1 or number > 3:
number = input('请重新选择操作:')
if number == 1:
select_student()
num = int(input('请输入删除的学员编号:'))
# all_stu_list.pop(num - 1)
cursor.execute("delete from stu where id = %s" % num)
conn.commit()
print('\n数据删除成功\n')
elif number == 2:
select_student()
sname = input('请输入删除的学员姓名:')
cursor.execute("DELETE FROM stu WHERE name = '%s' " %sname)
conn.commit()
# for index, info_list in enumerate(all_stu_list):
# # 判断输入的name的值,在info_list列表中是否存,如果存在,将这个小列表info_list删除,反之,不删除。
# if sname in info_list:
#
# conn.commit()
print('\n数据删除成功\n')
# else:
# # print('没有这个学员')
# pass
elif number == 3:
cursor.execute('DELETE FROM stu')
conn.commit()
# all_stu_list.clear()
# while len(all_stu_list):
# del all_stu_list[0]
cursor.close()
conn.close()
亲测无错
修改信息:update
def update_student():
"""
修改学员信息的函数
:return:
"""
conn = sqlite3.connect('student.db')
cursor = conn.cursor()
number = int(input('请输入修改学员的编号:'))
# 在修改学员信息之前,先查询所有学员信息,方便选择学员
select_student()
# while number < 1 or number > len(all_stu_list):
# number = int(input('没有该学员,请重新输入修改学员的编号:'))
# 根据输入的编号转化成索引值,将学员对应的小列表获取出来
# info_list = all_stu_list[number - 1]
re_name = input('请输入新的姓名: ')
re_age = input('请输入新的年龄(%s): ')
re_age = int(re_age)
cursor.execute("update stu set name = '%s', age = '%s' where id = '%s'"
%(re_name, re_age, number))
conn.commit()
# info_list[0] = re_name
# info_list[1] = re_age
print('\n学员信息修改完成\n')
持续更新。。。。。。
还没有评论,来说两句吧...