1、面向过程

 1 import pymysql
2
3 #面向过程
4 mysql_info = {'host':'127.0.0.1',
5 'port':3306,
6 'user':'root',
7 'password':'123456',
8 'autocommit':True,
9 'db':'db001',
10 'charset':'utf8'}
11
12
13 def connect():#连接数据库
14 connect = pymysql.connect(**mysql_info)
15 cursor = connect.cursor()
16 return connect,cursor
17
18
19 def execute(cursor,sql):#执行sql
20 result = cursor.execute(sql)
21 return result
22
23
24 def close(connect,cursor):#关闭连接
25 cursor.close()
26 connect.close()
27
28
29 connect,cursor = connect()
30 sql = 'select * from user_info'
31 result = execute(cursor,sql)
32 close(connect,cursor)

2、面向对象

 1 class MysqlDB:
2 def __init__(self,mysql_info):
3 self.mysql_info = mysql_info
4 self.__connect()
5
6 def __del__(self):#析构函数,实例被销毁的时候自动执行的函数
7 self.__close()
8
9 def __connect(self):#私有方法
10 self.conn = pymysql.connect(**self.mysql_info)
11 self.cur = self.conn.cursor(pymysql.cursors.DictCursor)
12
13 def execute(self,sql):
14 self.execute(sql)
15
16 def execute_one(self):#select * from user_info where name = 'xxx';
17 return self.cur.fetchone()
18
19 def execute_all(self):#select * from user_info;
20 return self.cur.fetchall()
21
22 def execute_many(self,limit):
23 return self.cur.fetchmany(limit)
24
25 def __close(self):
26 self.cur.close()
27 self.conn.close()
28
29
30 m = MysqlDB(mysql_info)
31 m.execute('select * from user_info;')
32 result = m.execute_all()
33 print(result)

Python使用笔记27--mysql操作封装类的更多相关文章

  1. python学习道路(day12note)(mysql操作,python链接mysql,redis)

    1,针对mysql操作 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 设置密码 update user set password ...

  2. 学习笔记:MySQL操作初步

    对数据库的操作:SQL语言 一:SQL:Structured Query Language,结构化查询语言! 二:DDL:Data Definition Language,数据定义语言 三:DML:D ...

  3. 17.swoole学习笔记--异步mysql操作

    <?php //异步mysql操作 $db=new swoole_mysql(); $config=[ 'host'=>'192.168.10.31', 'user'=>'zouke ...

  4. [Python] 学习笔记之MySQL数据库操作

    1 Python标准数据库接口DB-API介绍 Python标准数据库接口为 Python DB-API,它为开发人员提供了数据库应用编程接口.Python DB-API支持很多种的数据库,你可以选择 ...

  5. Python学习笔记15—mysql的操作

    安装 Python-MySQLdb pip install mysql-Python Python对mysql的操作 建立一个实验数据库demo mysql> create database d ...

  6. python学习笔记十一:操作mysql

    一.安装MySQL-python # yum install -y MySQL-python 二.打开数据库连接 #!/usr/bin/python import MySQLdb conn = MyS ...

  7. Python(SQLAlchemy-ORM)模块之mysql操作

    一.SQLAlchemy简单介绍 SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数 ...

  8. Python学习笔记:MySQL数据库连接和使用

    一.安装pymysql插件 直接在pycharm中安装即可. 二.使用 1.数据库插入操作 insert 注意: insert语句需要提交,使用commit() 如果报错,需要回滚.使用rollbac ...

  9. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  10. python学习笔记4(文件操作)

    文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”)      直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...

随机推荐

  1. 五、SVM推导过程

    SVM 时间复杂度一般为O(N³) 最重要的是推导过程 NIPS(机器学习顶级会议) 如果给定一个训练集,我们的目标是给定一个边界(一条线),离他最近的训练集样本路越宽越好 下面的几张图反映了SVM的 ...

  2. ALD技术,相机去噪,图像传感器

    ALD技术,相机去噪,图像传感器 1. 作为镜片的防反射涂层技术被关注的ALD(atomic layer deposition)的引入趋势. (a)为什么需要一种新的防止反射的涂层技术? ALD被认为 ...

  3. 基于Jittor框架实现LSGAN图像生成对抗网络

    基于Jittor框架实现LSGAN图像生成对抗网络 生成对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的 ...

  4. PointRCNN: 点云的3D目标生成与检测

    PointRCNN: 点云的3D目标生成与检测 PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud 论文地址 ...

  5. 使用Keil语言的嵌入式C编程教程(下)

    使用Keil语言的嵌入式C编程教程(下) 用8051单片机进行定时器/计数器的计算与编程 延迟是应用软件开发中的重要因素之一.然而,在实现定时延迟的过程中,正常的延迟并不能给出克服这一问题的宝贵结果. ...

  6. pycharm在虚拟机跑深度学习Mac

    1.在PyCharm里配置部署环境 打开PyCharmTools > Deployment > Configuration, 新建一个SFTP服务器,名字自己取: 输入如下图配置,注意这里 ...

  7. ABAP SORT排序注意点

    SORT TABLE BY XXX XXX .如果不加任何语法都是默认升序,延伸可以用ASCENDING和DESCENDING对具体的字段进行升序和降序排列. 简单通俗的来阐释一下,在字段名后面加AS ...

  8. Spring Cloud Alibaba(15)---Sleuth+Zipkin

    SpringCloudAlibaba整合Sleuth+Zipkin 有关Sleuth之前有写过两篇文章 Spring Cloud Alibaba(13)---Sleuth概述 Spring Cloud ...

  9. 《电容应用分析精粹:从充放电到高速PCB设计》最新勘误表

    最新勘误表百度云盘下载 链接: https://pan.baidu.com/s/18yqwnJrCu9oWvFcPiwRWvA  提取码: x3e3    (本勘误表仅包含错误相关部分,不包含对语句的 ...

  10. 快速串讲——JVM内存的区域划分

    目的 快速定位JVM内存泄漏或者溢出等问题. 面试基础题,加分项. 文章持续更新,微信搜索「万猫学社」第一时间阅读,关注后回复「电子书」,免费获取12本Java必读技术书籍. 程序计数器(Progra ...