当前位置:
首页 > temp > 简明python教程 >
-
如何在控制台实现一个数据管理系统(包括MYSQL数据库的增删改查)
为了方便的实现记录数据、修改数据没有精力去做一个完整的系统去管理数据。因此,在python的控制台直接实现一个简易的数据管理系统,包括数据的增删改查等等。只需要在控制台层面调用相应的功能调用查询、修改等功能,这里记录一下实现过程。
创建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('---------------- 简易数据管理系统 ----------------')
pprint('系统功能实现:<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
.
原文:https://www.cnblogs.com/lwsbc/p/15729475.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数