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 命令行非阻塞输入的小例子
Sep 27 Python
Python合并多个装饰器小技巧
Apr 28 Python
python中尾递归用法实例详解
Apr 28 Python
Python实现识别手写数字大纲
Jan 29 Python
python抽取指定url页面的title方法
May 11 Python
Python中Numpy包的安装与使用方法简明教程
Jul 03 Python
python 保存float类型的小数的位数方法
Oct 17 Python
Python Django中间件,中间件函数,全局异常处理操作示例
Nov 08 Python
python3.7通过thrift操作hbase的示例代码
Jan 14 Python
pandas和spark dataframe互相转换实例详解
Feb 18 Python
基于K.image_data_format() == 'channels_first' 的理解
Jun 29 Python
python之pygame模块实现飞机大战完整代码
Nov 29 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利用正则表达式将相对路径转成绝对路径的方法示例
2017/02/28 PHP
php取出数组单个值的方法
2018/03/12 PHP
Laravel中的chunk组块结果集处理与注意问题
2018/08/15 PHP
php新建文件的方法实例
2019/09/26 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
NodeJS学习笔记之FS文件模块
2015/01/13 NodeJs
jQuery根据用户电脑是mac还是pc加载对应样式的方法
2015/06/26 Javascript
JavaScript使用RegExp进行正则匹配的方法
2015/07/11 Javascript
jquery实现点击弹出可放大居中及关闭的对话框(附demo源码下载)
2016/05/10 Javascript
Jquery对新插入的节点 绑定Click事件失效的解决方法
2016/06/02 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
2016/11/29 Javascript
Bootstrap和Java分页实例第二篇
2016/12/23 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
2016/12/25 Javascript
JS 仿支付宝input文本输入框放大组件的实例
2017/11/14 Javascript
React数据传递之组件内部通信的方法
2017/12/31 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
2018/01/03 Javascript
vue短信验证性能优化如何写入localstorage中
2018/04/25 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
详解vue中多个有顺序要求的异步操作处理
2019/10/29 Javascript
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
2014/11/05 Python
详解python中的 is 操作符
2017/12/26 Python
使用Python如何测试InnoDB与MyISAM的读写性能
2018/09/18 Python
Django框架模板的使用方法示例
2019/05/25 Python
如何在mac版pycharm选择python版本
2020/07/21 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
15个Pythonic的代码示例(值得收藏)
2020/10/29 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
2021/01/05 Python
实习自我评价怎么写
2013/12/02 职场文书
人力资源经理的岗位职责范本
2014/02/28 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
总经理检讨书范文
2015/02/16 职场文书
mysql sql常用语句大全
2022/06/21 MySQL