Python基于TXT文件实现MySQL数据库增删改查的完整流程

何川
何川
发布时间:2026-10-15 | 3人浏览过
原创

本文详解如何使用Python在Spyder环境中,通过读取TXT文件内容来对MySQL数据库执行增、删、改、查、移操作。文章首先梳理关系数据库的基本概念与模型,随后展示如何构建菜单驱动的控制台程序,结合代码示例演示具体的数据交互逻辑,适合初学者掌握Python与数据库的基础交互方法。

一、关系数据库

1.数据模型

实体间的关系主要分为以下三种类型:

1*)一对一模型

一对一(one-to-one)

关系模型利用二维表格来展示数据及其相互联系,这是目前应用最为广泛的数据模型。当前主流的数据库管理系统,包括Microsoft SQL Server、Microsoft Access、Microsoft FoxPro、Oracle、MySQL以及SQLite等,均属于关系模型数据库。

2*)一对多模型

一对多(one-to-many)

层次模型采用树状结构来表现数据间的关联,树中的节点被称为记录,节点之间仅存在简单的层次关系。结构中必须有且仅有一个节点没有父节点,该节点被称为根节点;其余所有节点都拥有且仅拥有一个父节点。

3*)多对多模型

多对多(many-to-many)

在此模型中,可以存在任意多个没有父节点的节点。一个节点允许拥有多个父节点,且两个节点之间可以建立两种或两种以上的联系。

2.面相对象模型

1*)对象模型概念

面向对象模型是建立在面向对象技术基础之上的一种数据模型,它采用面向对象的设计方法来构建数据库。

2*) 对象模型特点

在面向对象模型的数据库中,数据以对象为单位进行存储,每个对象包含其属性和方法,并具备类与继承等特性。

二、了解关系数据库的概念和特点

关系数据库的概念和特点

1.基本概念

i*)关系

数据以及数据之间的联系被统称为关系。

ii*)二维表

关系数据库使用二维表来表示和存储关系,每一个关系对应一个二维表。表中的行被称为记录,列被称为字段。一个数据库可以包含多个这样的表。

iii*)记录与字段

表中的一行代表一个记录。表中的列是记录中的数据项,被称为字段。字段也可以称为属性或列。每个记录可以包含多个字段,不同的记录包含相同的字段(但字段的值不同)。例如,在用户表中,每个记录包含用户名、登录密码等字段。

关系数据库规定,在一个表中不允许出现重复的记录。

VI*)关键字

能够唯一标识一个记录的字段或字段组合被称为关键字。一个表可以拥有多个关键字,其中用于标识记录的关键字称为主关键字,其他的关键字可称为候选关键字。一个表只允许有一个主关键字。例如,在用户表中,用户名可被定义为主关键字,在添加记录时,主关键字不允许重复。

VII*)外部关键字

如果一个表中的字段或字段组合作为其他表的主关键字,这样的字段或字段组合被称为外部关键字。

2.基本特点

关系数据库中的表是二维表,表中的字段必须是不可再分的,即不允许表中表。

在同一个表中不允许出现重复的记录。

在同一个记录中不允许出现重复的字段。

表中记录的先后顺序不影响数据的性质,可以交换记录顺序。

记录中字段的顺序不影响数据,可以交换字段的顺序。

三、常用字段数据类型

数据表格

四、在spyder中调用文件TXT内容进入程序

第一步、首先我们需要把文件里面的内容写进spyder

当我们文件写入spyder成功后,就可以编写程序啦!

第二步、编写菜单程序

1.制作主页菜单


def query_record():
    print('查询学生记录')

def modify_record():
    print('修改学生记录')

def delete_record():
    print('删除学生记录')

def add_record():
    print('增加学生记录')

def exit_record():
    print("退出系统")
    
def login():
	while True:
	        
	        print('主菜单')
	        print('============='*2)
	        print('1. 查询记录')
	        print('2. 修改记录')
	        print('3. 删除记录')
	        print('4. 增加记录') 
	        print('5. 退出系统')
	        print('=============='*2)
	       
	        mc2 = int(input('输入菜单号:'))
	        if mc2 == 1:
	            query_record()
	        elif mc2 == 2:        
	            modify_record()
	        elif mc2 == 3:         
	            delete_record()
	        elif mc2 == 4:          
	            add_record()
	        elif mc2 == 5:
	            exit_record()
	        else:
	            break

当我们编写完菜单程序之后就可以针对菜单程序编写对应程序

编写相对应的程序菜单,列如编写进入查询记录菜单过后的程序

2.制作程序菜单


while True:
   
    print('============'*2)
    print('1. 查询学生记录')
    print('2. 修改学生记录')
    print('3. 删除学生记录')
    print('4. 增加学生记录')
    print('5. 退出系统')
    print('============'*2)
    

当我们编写完毕之后,总体的架构也就有了,这样就可以逐步实现每个菜单号所对应的代码啦!

首先编写查询学生学号的程序

3.编写查询学号程序


  mc1 = int(input('请输入菜单号:'))
    if mc1 == 1:
        id=input("请输入您想查询的学号:")
        for student in students:
            found=False
            if (student[0]==id):  
                found=True
                print("恭喜记录查询成功!")
                print()
                for i in range(len(student)):              
                    print(student[i],end=" ")            
                print()
                break
            
        if not found:
        		print("姓名为{}的同学没有找到!".format(id))

查询到所要修改的学号后,输入修改后的新学号

4.编写修改学号程序


elif mc1==2:
        
        id=input("请输入您想修改的学号:")        
        for student in students:         
            found=False            
            if (student[0]==id):                
                found=True                
                student=list(student)                                              
                student[7]=int(input("输入新的电话号码:"))            
                student[3]=int(input("输入新的年龄:"))               
                print("恭喜记录修改成功!")                
                for i in range(len(student)):                  
                    print(student[i],end=" ")                
                print()              
                break                  
        if not found:           
            print("姓名为{}的同学没有找到!".format(id))

查询记录程序编完之后就可以进行修改记录程序的编写了

5.编写学号程序


 elif mc1==2:        
        id=input("请输入您想修改的学号:")        
        for student in students:           
            found=False            
            if (student[0]==id):               
                found=True                
                student=list(student)                                            
                student[7]=int(input("输入新的电话号码:"))                
                student[3]=int(input("输入新的年龄:"))               
                print("恭喜记录修改成功!")                
                for i in range(len(student)):                  
                    print(student[i],end=" ")                
                print()               
                break                   
        if not found:           
            print("姓名为{}的同学没有找到!".format(id))

修改记录程序编完之后就可以进行删除记录程序的编写了

6.编写删除学生记录程序


elif mc1==3:      
    id=input("请输入你想删除的学生学号:")       
    found=False                   
    for student in students:           
        if (student[0]==id):                
            found=True               
            students.remove(student)              
            print("恭喜记录删除成功!")
        print()     
    break                         
    if not found:          
        print("姓名为{}的同学没有找到!".format(id))        
    else:           
        for student in students:               
            for i in range(len(student)):                    
                print(student[i],end=" ")                
            print()  

删除记录程序编完之后就可以进行增加记录程序的编写了!

7.编写增加学生记录程序

第三步、退出系统即可

以上就是Python利用txt文件对Mysql进行增删改查移的详细内容,更多关于Python Mysql增删改查移的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表