Python MySQL数据库基本操作及项目示例详解

Python MySQL数据库基本操作及项目示例详解

这篇文章主要介绍了Python连接MySQL数据库后的一些基本操作,并以银行管理系统项目为例,为大家具体介绍了一下部分功能的实现,文中的示例代码具有一定的学习价值,感兴趣的可以了解一下,

目录


一、数据库基础用法

要先配置环境变量,然后cmd安装:pip install pymysql

1、连接MySQL,并创建wzg库

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

#引入decimal模块

import pymysql

#连接数据库

db=pymysql.connect(host='localhost',user='root',password='1234',charset='utf8')

#创建一个游标对象(相当于指针)

cursor=db.cursor()

#执行创建数据库语句

cursor.execute('create schema wzg default charset=utf8;')

cursor.execute('show databases;')

#fetchone获取一条数据(元组类型)

print(cursor.fetchone())

#现在指针到了[1]的位置

#fetchall获取全部数据(字符串类型)

all=cursor.fetchall()

for i in all:

    print(i[0])

#关闭游标和数据库连接

cursor.close()

db.close()

2、创建student表,并插入数据

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

import pymysql

#连接数据库,并打开wzg数据库(数据库已创建)

db=pymysql.connect(host='localhost',user='root',password='1234',charset='utf8',db='wzg')

#创建游标对象

cursor=db.cursor()

try:

    #创建student表,并执行

    sql='''create table student(

       SNO char(10),

       SNAME varchar(20) NOT NULL,

       SSEX varchar(1),

       primary key(SNO)

       )default charset=utf8;'''

    cursor.execute(sql)

     

    #插入一条数据,并执行

    insert_sql='''

    insert into student values('200303016','王智刚','男'),('20030001','小明','男')

    '''

    cursor.execute(insert_sql)

     

    #将数据提交给数据库(加入数据,修改数据要先提交)

    db.commit()

     

    #执行查询语句

    cursor.execute('select * from student')

     

    #打印全部数据

    all=cursor.fetchall()

    for i in all:

        print(i)

#发生错误时,打印报错原因

except Exception as e:

    print(e)

#无论是否报错都执行

finally:

    cursor.close()

    db.close()

数据库中char和varchar的区别:

char类型的长度是固定的,varchar的长度是可变的。

例如:存储字符串'abc',使用char(10),表示存储的字符将占10个字节(包括7个空字符),

使用varchar(10),表示只占3个字节,10是最大值,当存储的字符小于10时,按照实际的长度存储。

二、项目:银行管理系统

完成功能:1.查询 2.取钱 3.存钱 4.退出

练习:创建信息表,并进行匹配

1、创建数据库为(bank),账户信息表为(account)

account_id(varchar(20)) Account_passwd(char(6)) Money(decimal(10,2))
001 123456 1000.00
002 456789 5000.00

2、拓展:进行账号和密码的匹配

请输入账号:001

请输入密码:123456

1

2

3

4

5

select * from account where account_id=001 and Account_passwd=123456

if cursor.fetchall():

登录成功

else:

登录失败

</

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

import pymysql

# 连接数据库

db = pymysql.connect(host='localhost', user='root', password='1234', charset='utf8')

cursor = db.cursor()

# 创建bank库

cursor.execute('create database bank charset utf8;')

cursor.execute('use bank;')

try:

    # # 创建表

    # sql = '''create table account(

    #    account_id varchar(20) NOT NULL,

    #    account_passwd char(6) NOT NULL,

    #    money decimal(10,2),

    #    primary key(account_id)

    #    );'''

    # cursor.execute(sql)

    # # 插入数据

    # insert_sql = '''

    # insert into account values('001','123456',1000.00),('002','456789',5000.00)

    # '''

    # cursor.execute(insert_sql)

    # db.commit()

    # # 查询所有数据

    # cursor.execute('select * from account')

    # all = cursor.fetchall()

    # for i in all:

    #     print(i)

    # 输入账号和密码

    z=input("请输入账号:")

    m=input("请输入密码:")

     

    # 从account表中进行账号和密码的匹配

    cursor.execute('select * from account where account_id=%s and account_passwd=%s',(z,m))

     

    # 如果找到,则登录成功

    if cursor.fetchall():

        print('登录成功')

    else:

        print('登录失败')

except Exception as e:

    print(e)

finally:

    cursor.close()

    db.close()

Read more

印度统治阶级锁死底层人的5大阳谋

印度统治阶级锁死底层人的5大阳谋

基于社会学和心理学视角: 1. 情感道德: 统治阶级通过塑造道德规范和情感价值观,引导底层人群的行为。例如,宣扬“勤劳致富”“忍耐美德”等观念,让底层人接受现状并自我约束。这种道德框架往往掩盖结构性不平等,使人们将个人困境归咎于自身而非系统。 2. 欲望控制: 通过消费主义和媒体宣传,统治阶级刺激底层人的物质与社会欲望(如名牌、地位),但同时设置经济壁垒,使这些欲望难以实现。底层人被困在追求“更好生活”的循环中,精力被分散,无法聚焦于挑战权力结构。 3. 情绪煽动: 利用恐惧、愤怒或民族主义等情绪,统治阶级可以通过媒体或公共事件转移底层人对社会问题的注意力。例如,制造外部敌人或内部对立(如阶层、种族矛盾),让底层人内耗而非联合反抗。 4. 暴利诱惑: 通过展示少数“成功案例”或快速致富的机会(如赌博、投机),诱导底层人追逐短期暴利。这种机制不仅让底层人陷入经济风险,还强化了对现有经济体系的依赖,削弱长期变革的可能性。 5. 权力震撼: 通过展示统治阶级的权力(

By Ne0inhk