python修改mysql字段属性_python操作MySQL数据库储存数据,涵盖插入删除查询修改全过程...

今天的内容是: python 操作MySQL

说到数据库,可能有些朋友没有学过MySQL数据库语句语法,不过没关系,python中操作数据库储存数据,也就是创建一个表格,然后向表格中插入数据的过程,没有多少内容的,数据库表格最常用的知识点也就4点,下面具体介绍理论和实战例子:

1.在python这里操作MySQL数据库有4个内容:

添加(插入)内容 + 删除内容 + 查询内容 + 修改(更新)内容

2.创建表格和插入数据进入表格的专有单词大小写都可以

例如:cur.execute('create table person (id int not null auto_increment primary key, \name varchar (20), age int)')

3. 疑惑解答:

表格已经创建,如果还想要在这个已经创建的表格中插入数据,

就将创建表格的代码注释掉。

实战例子:这里涵盖了python操作MySQL数据库的所有常用的知识点,掌握的话,对这一块数据储存就没什么大问题了。

# 1.导入模块

import pymysql

# 2.打开数据库,即连接到数据库(前面4个必写且顺序不能变)

# 端口port='', 字符类型charset='utf-8'

conn = pymysql.connect(host='localhost', user='root', passwd='root', db='lxz')

# 3.数据库连接对象,创建游标,execute()执行MySQL语句,executemany()执行多条MySQL语句

cur = conn.cursor()

################## 4.建立一个名字为person的表格来储存信息 ############################

cur.execute('create table person (id int not null auto_increment primary key, \ name varchar (20), age int)')

内容1:插入数据################# 5.向表格中插入数据 #################################################

############## 单独数据插入

# cur.execute('insert into person (name,age) values('lxz',21)') # 直接赋值 # cur.executemany('insert into person (name,age) values (%s,%s)',\ # [('qqaa', 21), ('bbb', 19), ('ccc', 16), ('ddd', 28), ('eee', 37)]) # 通过占位符赋值

############# 批量数据插入,通过占位符才可以

总结经验,用cur.execute()批量处理要有两个占位符(不能多也不能少,

无论插入的数据有多少都只能是两个),后面的kkk1是一个[(),(),()]这样形式的列表

#第一个方法: 对cur.execute()而言,批量插入式通过循环实现的

name1 = ['aaa','bbb','ccc','ddd','eee'] age1 = [21,19,16,28,37] for i in range(len(name1)): kk = (str(name1[i]),age1[i]) cur.execute('insert into person (name,age) values (%s,%s)',kk)

# 第二个方法:对于cur.executemany()而言,将所有数据添加至一个列表中,然后将列表名插进来就可以了

kkk1 = [] for i in range(len(name1)): kkk2 = (name1[i],age1[i]) # print(kkk2) kkk1.append(kkk2) # print(kkk1) cur.executemany('insert into person (name,age) values (%s,%s)',kkk1)

内容2:########################## 6.查询数据 #################################################

游标提供了fetchall()方法获取所有数据,返回一个二维元组和

fetchone()方法获取其中的一个结果,返回一个元组

############ 使用fetchall()方法输出所有数据

cur.execute('select * from person') res = cur.fetchall() # print(res) for item in res: # 输出数据库表格中的所有数据 # print('id='+str(item[0])+'\tname='+str(item[1])+'\tage='+str(item[2]))

############ 使用fetchone()方法输出一行数据

cur.execute('select * from person') res = cur.fetchone() # print('fetchone()方法:',res)

内容3: ###################### 7.修改(更新)数据 ##############################################

################ 单个修改

# 修改id等于1的名字'lxz'为另外一个名字'vivo',person是表格的名称 cur.execute('update person set name = %s where id = %s',('vivo',1))

################ 批量修改(更新)

name1 = ['@ab','@bbb','@ccc','@ddd','@eee'] id = [3,4,5,16,18] for i in range(len(name1)): kk = (str(name1[i]),id[i]) cur.execute('update person set name = %s where id = %s',kk)

内容4:####################### 8.删除数据 #####################################################

############### 删除一行内容

# 删除id等于2这一行的内容 cur.execute('delete from person where id = %s',(2,))

############## 批量删除内容

id = [] # 通过循环批量生成id号,批量删除id号所对应行的内容 for i in range(22,141): id = (i,) cur.execute('delete from person where id = %s',id)

# 9.对数据库对象conn进行提交操作

conn.commit() # 如果出现错误,可以使用回滚操作conn.rollback()

# 10.关闭游标

cur.close()

# 11.关闭数据库的连接

conn.close()

以上就是python操作MySQL数据库的所有常见的内容了,希望对读者朋友有帮助。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值