如何在控制台实现一个数据管理系统(包括MYSQL数据库的增删改查)

为了方便的实现记录数据、修改数据没有精力去做一个完整的系统去管理数据。因此,在python的控制台直接实现一个简易的数据管理系统,包括数据的增删改查等等。只需要在控制台层面调用相应的功能调用查询、修改等功能,这里记录一下实现过程。

file

file

【阅读全文】

创建mysql数据表

使用比较熟悉的数据库客户端来进行操作,这里使用的是navicate客户端来创建好相应的数据表。

创建数据库并指定编码字符集。

CREATE DATABASE data_boc CHARACTER SET ‘utf8mb4’ COLLATE ‘utf8mb4_general_ci’;

创建数据记录表boc

CREATE TABLE boc (

id_ bigint(255) NOT NULL COMMENT ‘数据记录编号,ID_作为主键’,

boc_address varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,

boc_code varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,

boc_email varchar(24) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,

boc_name varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,

PRIMARY KEY (id_) USING BTREE

)

增删改查

import pymysql as mysql # 导入mysql驱动器

from pprint import pprint # 导入美观的数据打印库

确定一下需要实现哪些功能,在控制台打印出功能列表,通过在控制台输入每个功能列表前面的标记来进入后台系统的使用。

def current_menu():

‘’’

功能目录列表展示

:return:

‘’’

pprint(‘---------------- 简易数据管理系统 ----------------’)

pprin
t(‘系统功能实现:<Python 集中营>’)

pprint(‘1- 查询数据列表’)

pprint(‘2- 新增数据列表’)

pprint(‘exit- 退出系统’)

pprint(‘更多功能、暂未实现’)

编写数据库连接的创建函数,在修改或查询数据时直接调用。

def cteate_connection():

‘’’

创建数据库连接

:return:

‘’’

connection = mysql.connect(host=‘127.0.0.1’,

user=‘root’,

password=‘root’,

database=‘data_boc’)

return connection

编写保存数据的函数用于数据列表新增功能实现。

def set_data():

‘’’

新增数据保存

:return:

‘’’

pprint(‘当前进入[2- 新增数据列表]’)

id = input(‘输入数据编号’)

id = int(id)

boc_address = str(input(‘输入详细地址’))

boc_code = str(input(‘输入具体编码’))

boc_email = str(input(‘输入正确邮箱’))

boc_name = str(input(‘输入数据名称’))

pprint(‘数据输入完成,开始保存…’)

‘’‘创建数据库接连’‘’

connection = cteate_connection()

cursor = connection.cursor()

insert_sql = “insert into boc(id_,boc_address,boc_code,boc_email,boc_name) values(‘%d’,‘%s’,‘%s’,%s,%s)” % (

id, boc_address, boc_code, boc_email, boc_name)

try:

cursor.execute(insert_sql)

connection.commit()

except:

connection.rollback()

print(“数据保存出现异常…”)

connection.close()

pprint(‘数据保存完成…’)

编写数据列表的查询功能函数。

def get_data():

pprint(‘当前进入[1- 查询数据列表]’)

‘’‘创建数据库连接’‘’

connection = cteate_connection()

cursor = connection.cursor()

select_sql = “select * from boc”

res_list = []

try:

cursor.execute(select_sql)

res = cursor.fetchall()

for row in res:

id = row[0]

boc_address = row[1]

boc_code = row[2]

boc_email = row[3]

boc_name = row[4]

res_list.append({‘数据编号’:id,‘详细地址’:boc_address,‘具体编码’:boc_code,‘邮箱地址’:boc_email,‘名称’:boc_name})

pprint(‘数据结果:{}’.format(res_list))

connection.commit()

except:

print(“数据查询出现异常…”)

connection.close()

pprint(‘数据查询完成…’)

启动应用

if name == ‘main’:

while True:

current_menu()

chiose_code = input(‘输入菜单编号:’)

if str(chiose_code) == ‘2’:

set_data()

if str(chiose_code) == ‘1’:

get_data()

if str(chiose_code) == ‘exit’:

break

【往期精选】

自制文档格式转换器,支持 .txt/.xlsx/.csv格式转换…

PyPDF2如何实现按照PDF页码提取后并另存为PDF格式文件?

PyQt5 GUI:百度图片下载器(文末附源码)
浪漫的turtle,送给程序员自己的圣诞树!
PyQt5 GUI && Requests Api 做一个天气查询系统(文末领取完整代码)!

最后

小编这些年深知大多数初中级工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此我收集整理了一份《2024年Java全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你需要这些资料,⬅专栏获取
效果低效漫长且无助。**

因此我收集整理了一份《2024年Java全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

[外链图片转存中…(img-kZw6l9Ih-1719683870425)]

[外链图片转存中…(img-Gesvv1FM-1719683870425)]

[外链图片转存中…(img-rE10akzi-1719683870426)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你需要这些资料,⬅专栏获取

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值