python如何操作mysql


Posted in Python onAugust 17, 2020

mysql 使用

启动服务

sudo systemctl start mysql
pip3 install pymysql

python 操作数据库:

  • 定义类
import pymysql

class MyDb():
  def __init__(self, host, user, passwd, db):
      self.__db = pymysql.connect(host, user, passwd, db)
      self.__cursor = self.__db.cursor()

  # 增删改-数据库
  def set(self, sql):
    try:
      self.__cursor.execute(sql)
      self.__db.commit()
    except Exception as e:
      self.__db.rollback()
      print('Execute Error: \n {e}')

  # 查-数据库
  def get(self, sql, fetchone=True):
    self.__cursor.execute(sql)
    try:
      if fetchone == True:
        data = self.__cursor.fetchone()
      else:
        data = self.__cursor.fetchall()
    except Exception as e:
      print('Execute Error: \n {e}')
      data = None
    finally:
      return data

  # 关闭数据库
  def close(self):
    self.__db.close()
  • 调用
def example():
  ## 实例化数据库
  ### 类参数:host、user、passwd、db
  db = MyDb('localhost', 'root', 'zuoy123', 'test')
  
  ## 查看版本
  get_version_sql = 'SELECT VERSION()'
  version = db.get(get_version_sql)
  print(f'Database Version: {version}')

  ## 删除表
  delete_table_sql = 'DROP TABLE IF EXISTS employee'
  db.set(delete_table_sql)

  ## 新建表
  new_table_sql = 'CREATE TABLE IF NOT EXISTS employee( \
    id INT NOT NULL PRIMARY KEY, \
    name CHAR(21) NOT NULL, \
    age DOUBLE DEFAULT 18)'
  db.set(new_table_sql)

  ## 查找表
  get_table_sql = 'SHOW TABLES'
  data = db.get(get_table_sql)
  if data:
    print(data)

  ## 关闭数据库
  db.close()

if __name__ == '__main__':
  example()

常用sql

DROP TABLE IF EXISTS employee;
CREATE TABLE IF NOT EXISTS employee(id INT);

以上就是python操作 mysql的步骤的详细内容,更多关于python操作 mysql的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python基础教程之udp端口扫描
Feb 10 Python
Python中运行并行任务技巧
Feb 26 Python
Python中利用原始套接字进行网络编程的示例
May 04 Python
python处理html转义字符的方法详解
Jul 01 Python
浅谈五大Python Web框架
Mar 20 Python
pygame游戏之旅 添加游戏界面按键图形
Nov 20 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
Jul 07 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
pytorch查看torch.Tensor和model是否在CUDA上的实例
Jan 03 Python
pycharm部署、配置anaconda环境的教程
Mar 24 Python
如何理解python对象
Jun 21 Python
python如何实现图片压缩
Sep 11 Python
详解python 内存优化
Aug 17 #Python
浅谈如何使用python抓取网页中的动态数据实现
Aug 17 #Python
详解Python 中的容器 collections
Aug 17 #Python
Python 解析库json及jsonpath pickle的实现
Aug 17 #Python
Python实现爬取网页中动态加载的数据
Aug 17 #Python
Python 如何操作 SQLite 数据库
Aug 17 #Python
Python使用正则表达式实现爬虫数据抽取
Aug 17 #Python
You might like
php递归使用示例(php递归函数)
2014/02/14 PHP
zend framework重定向方法小结
2016/05/28 PHP
wordpress之js库集合研究介绍
2007/08/17 Javascript
jQuery live
2009/05/15 Javascript
Jquery命名冲突解决的五种方案分享
2012/03/16 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
基于AngularJS+HTML+Groovy实现登录功能
2016/02/17 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
jquery 实现复选框的全选操作实例代码
2017/01/24 Javascript
利用Javascript实现简单的转盘抽奖
2017/02/13 Javascript
react.js 父子组件数据绑定实时通讯的示例代码
2017/09/25 Javascript
vue自定义全局共用函数详解
2018/09/18 Javascript
vue-cli项目修改文件热重载失效的解决方法
2018/09/19 Javascript
微信小程序bindinput与bindsubmit的区别实例分析
2019/04/17 Javascript
Vue生命周期activated之返回上一页不重新请求数据操作
2020/07/26 Javascript
[01:08:09]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第二局
2016/03/02 DOTA
[01:12:35]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
[36:20]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.17
2020/12/18 DOTA
python实现自动更换ip的方法
2015/05/05 Python
python判断windows系统是32位还是64位的方法
2015/05/11 Python
python装饰器与递归算法详解
2016/02/18 Python
python输出100以内的质数与合数实例代码
2018/07/08 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
2018/10/17 Python
Django实现文件上传和下载功能
2019/10/06 Python
python3:excel操作之读取数据并返回字典 + 写入的案例
2020/09/01 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
ziaja齐叶雅官方海外旗舰店:来自波兰的天然护肤品牌
2017/01/02 全球购物
暑假实习求职信范文
2013/09/22 职场文书
女大学生毕业找工作的自我评价
2013/10/03 职场文书
护理自荐信
2013/10/22 职场文书
初中生期末评语大全
2014/04/24 职场文书
大学生党校培训心得体会
2014/09/11 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
安全保证书怎么写
2015/02/28 职场文书