专栏首页python3调用pymysql模块操作数据库

调用pymysql模块操作数据库

1、创建数据库表:

 1 def create_table(tb_name):
 2     import pymysql#导入模块
 3     #连接数据库
 4     db = pymysql.Connect('localhost','root','123','zabbix_db')
 5     #创建游标对象(工具)
 6     cursor = db.cursor()
 7     #SQL语句,实现对数据库表的创建
 8     sql = 'create table %s(id int,name char(30),age int);'%tb_name
 9     #执行sql命令
10     cursor.execute(sql)
11     #关闭游标
12     cursor.close()
13     #关闭数据库
14     db.close()
15 create_table(user)

2、添加数据:

 1 def insert_data(id_data,name_data,age_data):
 2     import pymysql
 3     db = pymysql.Connect('127.0.0.1','root','123','zabbix_db')
 4     cursor = db.cursor()
 5     sql = 'insert into user1(id,name,age) values(%s,%s,%s);'
 6     cursor.execute(sql,(id_data,name_data,age_data))
 7     db.commit()#确认提交
 8     cursor.close()
 9     db.close()
10     print('执行成功,数据库连接关闭')
11 insert_data(5,"James",33)

3、删除数据:

 1 def del_data(name_data):
 2     import pymysql
 3     db = pymysql.Connect('127.0.0.1', 'root', '123', 'zabbix_db')
 4     cursor = db.cursor()
 5     sql = 'delete from user1 where name=%s;'
 6     cursor.execute(sql, (name_data))
 7     db.commit()
 8     cursor.close()
 9     db.close()
10     print('执行成功,数据库连接关闭')
11 del_data('Luckly')

4、更新数据

 1 def update_data(new_age,old_name):
 2     import pymysql
 3     db = pymysql.Connect('127.0.0.1', 'root', '123', 'zabbix_db')
 4     cursor = db.cursor()
 5     sql = 'update user1 set age=%s where name=%s;'
 6     cursor.execute(sql, (new_age,old_name))
 7     db.commit()
 8     cursor.close()
 9     db.close()
10     print('执行成功,数据库连接关闭')
11 update_data(18,'tom')

5、查询数据

 1 def search_data():
 2     db = pymysql.connect('127.0.0.1','root','123','zabbix_db')
 3     #创建游标
 4     cursor = db.cursor()
 5     #要执行的sql
 6     sql = 'select * from user1'
 7     #根据执行的条件进行查询
 8     # sql = 'select * from user1 where age > 18'
 9     cursor.execute(sql)
10     # 将查找到的所有数据,存储到变量all_users中
11     all_users = cursor.fetchall()
12     # print(all_users)#以元组方式存储,一个元素就是一个元组,然后每个信息存储到大的元组中
    #((2, 'Jerry', 20), (3, 'Tom', 18), (4, 'Jeter', 12), (5, 'James', 33))

13     i = 0
14     while i < len(all_users):
15         user = all_users[i]
16         # print(user)
17         print('name:{}\tage:{}'.format(user[1],user[2]))
18         print('-----'*10)
19         i += 1
20     #关闭游标
21     cursor.close()
22     #关闭数据库
23     db.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python全栈开发之---mysql数

    Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。

    py3study
  • python学习-使用MySQLdb操作

    MySQLdb是用于Python连接mysql数据库的接口,它实现了Python数据库api规范2.0。

    py3study
  • python3_08.动动mysql

    PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库。

    py3study
  • python3_08.动动mysql

    PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库。

    py3study
  • Python: 操作MySQL数据库

    用户2183996
  • StreamingPro支持Flink的流式计算了

    有的时候我们只要按条处理,追求实时性而非吞吐量的时候,类似Storm的模式就比较好了。Spark 在流式处理一直缺乏改进,而Flink在流式方面做得很棒,两者高...

    用户2936994
  • django执行原始查询sql,并返回Dict字典例子

    很多时候执行sql语句,数据比django的model来的快,但并不想关心返回的字段,例如你可以执行:select * from product这种sql,这里...

    砸漏
  • 基于音频的大熊猫自动交配成功率预测(CS SD)

    原文题目:Audio-based automatic mating success prediction of giant pandas

    用户6853689
  • Linux下的Mongodb部署应用梳理

    一、Mongodb简介  官网地址:http://www.mongodb.org/ MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数...

    洗尽了浮华
  • JudasDNS:域名服务器DNS投毒测试工具

    JudasDNS是一款针对DNS域名服务器的安全测试工具,在JudasDNS的帮助下,广大安全研究人员可以方便地对目标域名服务器进行DNS投毒攻击测试,以确保域...

    FB客服

扫码关注云+社区

领取腾讯云代金券