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使用urllib2模块抓取HTML页面资源的实例分享
May 03 Python
浅谈Python 字符串格式化输出(format/printf)
Jul 21 Python
django中send_mail功能实现详解
Feb 06 Python
python 读取视频,处理后,实时计算帧数fps的方法
Jul 10 Python
Python中面向对象你应该知道的一下知识
Jul 10 Python
python3实现mysql导出excel的方法
Jul 31 Python
python爬虫 urllib模块发起post请求过程解析
Aug 20 Python
用python写测试数据文件过程解析
Sep 25 Python
pandas分批读取大数据集教程
Jun 06 Python
PIP和conda 更换国内安装源的方法步骤
Sep 21 Python
python tkinter的消息框模块(messagebox,simpledialog)
Nov 07 Python
Python爬虫爬取有道实现翻译功能
Nov 27 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实现仿Google分页效果的分页函数
2015/07/29 PHP
PHP实现下载远程图片保存到本地的方法
2017/06/19 PHP
Extjs 几个方法的讨论
2010/01/28 Javascript
屏蔽script注入小例子
2013/11/12 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
理解javascript回调函数
2014/12/28 Javascript
编写自己的jQuery提示框(Tip)插件
2015/02/05 Javascript
JavaScript数组和循环详解
2015/04/27 Javascript
JavaScript实现带箭头标识的多级下拉菜单效果
2015/08/27 Javascript
jQuery 选择同时包含两个class的元素的实现方法
2016/06/01 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
jQuery实现导航高亮的方法【附demo源码下载】
2016/11/09 Javascript
vue父组件通过props如何向子组件传递方法详解
2017/08/16 Javascript
微信小程序onLaunch异步,首页onLoad先执行?
2018/09/20 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
2019/01/24 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
vue项目中使用fetch的实现方法
2019/04/25 Javascript
如何基于javascript实现贪吃蛇游戏
2020/02/09 Javascript
python抓取最新博客内容并生成Rss
2015/05/17 Python
详解Django中的权限和组以及消息
2015/07/23 Python
Python中字典的浅拷贝与深拷贝用法实例分析
2018/01/02 Python
python实现日常记账本小程序
2018/03/10 Python
浅谈python中字典append 到list 后值的改变问题
2018/05/04 Python
Python版名片管理系统
2018/11/30 Python
Python基于opencv调用摄像头获取个人图片的实现方法
2019/02/21 Python
python字符串替换re.sub()实例解析
2020/02/09 Python
python数据处理——对pandas进行数据变频或插值实例
2020/04/22 Python
Idea安装python显示无SDK问题解决方案
2020/08/12 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
你懂得怎么写自荐信吗?
2013/12/27 职场文书
心得体会开头
2014/01/01 职场文书
简历中自我评价怎么写
2014/02/12 职场文书
合同纠纷调解书
2015/05/20 职场文书
结婚十年感言
2015/07/31 职场文书
如何撰写创业策划书
2019/06/27 职场文书
总结一下关于在Java8中使用stream流踩过的一些坑
2021/06/24 Java/Android