42.MySQL数据库安装,及驱动程序选择
MySQL驱动程序安装:
我们使用Django来操作Mysql,实际上底层还是通过Python来操作的,因此我们想要使用Django来操作mysql,首先还是需要安装一个驱动程序,在Python3中,驱动程序有多种选择。比如有pymysql以及mysqlclient等。这里我们就是用pymysql来操作。pymysql安排非常简单,只需要通过pip install pymysql即可安装。
常见Mysql驱动程序介绍:
- MySQL-python:也就是MySQLdb,是对C语言操作MySQL数据库的一个简单封装。遵循了Python DB API v2.但是只支持Python2,目前还不支持Python3.
- mysqlclient:是mysql-python的另一个分支。支持Python3并且修复了一个bug。
- pymysql:纯Python实现的一个驱动,因为是纯Python实现的,因此执行效率不如MySQL-python。并且也因为是纯Python编写的,因此可以和Python代码无缝连接。
- MySQL Connectot/Python:MySQL官方推出的使用纯Python连接MySQL的驱动,因为是纯Python开发的,效率不高。
在Django中操作数据库有两种方式,第一种方式就是使用原生sql语句操作,第二种就是使用ORM模型来操作。
在Django中使用原生sql语句操作其实就是使用python db api 的接口来操作,如果你的mysql驱动程序使用的是pymysql,那么你就是使用pymysql来操作的,只不过Django将数据库连接部分封装好了,我们只要找settings.py中配置好了数据库连接信息后直接使用Django封装好的接口就可以进行操作了,示例代码如下:
以上的execute以及fetchall方法就是Python DB API规范中定义好的,任何使用Python来操作mysql的驱动程序都应该遵循这个规范。所以不管是使用pymysql或者是mysqlclient 或者是mysqldb,他们的接口都是一样的。
Python DB API规范下cursor对象常用的接口:
- description:如果cursor执行了查询的sql代码,那么读取cursor.description属性的时候,将返回一个列表,这个列表中封装的是元组,元组中封装的分别是(name,type_code,display_size,internal_size,precision,scale,null_ok),其中name参数代表的是查出来的数据字段名称,其他参数暂时用处不大。
- rowcount:代表的是在执行了sql语句后受影响的行数。
- close:关闭游标。关闭游标以后就再也不能使用了,否者会抛出异常。
- execute(sql[,parameters]):执行某个sql语句,如果在执行sql语句的时候还需要传递参数,那么可以传给parameters参数,示例代码如下:
- fetchone:在执行查询操作之后获取第一条数据。
- fetchmany(size):再执行查询操作之后,获取多条数据,具体的个数根据size的大小,如果不传入size参数,那么默认获取第一条数据。
- fetchall:获取所有满足sql语句的数据。
42.MySQL数据库安装,及驱动程序选择的更多相关文章
- (三)—Linux文件传输与mysql数据库安装
文件传输工具使用 为了速成,关于linux系统的学习都先放一放,用到哪个知识点就查哪个,这里想在linux下装一些服务练练手,最先想到的就是装个mysql数据库试试. 因为我用的是虚拟机下的li ...
- Mysql数据库安装和配置
http://blog.csdn.net/pipisorry/article/details/46773507 Mysql数据库安装和配置.mysql语法.特殊符号及正则表达式的使用.MySQL备份与 ...
- MySql数据库安装
MySql数据库安装 一丶数据库 什么是数据库 数据库简单连接就是存储数据的容器. 而库则是一组容器合成的东西. 也就是存储数据的.我们编程中常常会用到数据库. 什么是数据管理系统 数据库管理系统就是 ...
- MySql 数据库安装、环境变量配置 以及 本地连接
一.准备 MySql 的安装包,这里我从网上下载的是 mysql-installer-community-5.6.21.1.msi,如下图: 二.,双击 mysql-installer-com ...
- 01 MySQL数据库安装(Windows+Mac)
目录 MySQL数据库安装 Windows 1.主要版本简介 2.软件下载 3.文件目录简介 4.使用 4.1配置环境变量 4.2登录 制作MySQL服务端开机自启动 运行MySQL 4.3 密码修改 ...
- mysql数据库安装注意事项:
mysql数据库安装注意事项: https://jingyan.baidu.com/article/642c9d34aa809a644a46f717.html(安装教程) 注意语言设置为gbk可以解决 ...
- MySql C++调用库Connector/c++编译 和 接口封装【一】mysql数据库安装
Connector/c++库的源文件编译,你需要先准备好以下工具: mysql数据库(编译时要依赖),boost库,cmake(生成sln工程文件),connector/c++的源文件,vis ...
- 第二百七十五节,MySQL数据库安装和介绍
MySQL数据库安装 一.概述 1.什么是数据库 ? 答:数据的仓库,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access.MS SQL Server等 ? 答:他们均是一种 ...
- mysql数据库安装与卸载以及Navicat安装
关系型数据库Mysql 1.mysql官网网址:www.mysql.org 2.mysql数据库安装 傻瓜式安装下载地址 https://dev.mysql.com/downloads/install ...
随机推荐
- ubuntu 14.04 如何设置静态ip
有线网络: 1. 找到文件并作如下修改: sudo vim /etc/network/interfaces 修改如下部分: auto eth0iface eth0 inet staticaddress ...
- tensorflow feed_dict()
import tensorflow as tf a=tf.Variable(100) b=tf.Variable(200) c=tf.Variable(300) update1=tf.assign(c ...
- JavaScript 与 Java 有什么不同?
JavaScript 编程语言是由 Netscape,Inc. 开发的,它并不是 Java 平台的一部分. JavaScript 不会创建小应用程序或独立应用程序.在最常见的形式中,JavaScrip ...
- 2019icpc南京网络赛 A The beautiful values of the palace(离线+树状数组)
题意: (假设所有的点对应的值已经求出)给你一个1e6*1e6的矩阵,有m<=1e5个点有值,其余都为0 q<=1e5个询问,求子矩阵的权值和 思路: 根据二维差分,对于询问左下角(x1, ...
- Go语言实现:【剑指offer】字符流中第一个不重复的字符
该题目来源于牛客网<剑指offer>专题. 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是 ...
- Flutter报错 Waiting for another flutter command to release the startup lock...
Waiting for another flutter command to release the startup lock… 异常解决 平时我们在开发flutter过程中,在执行flutter p ...
- Python - with open()、os.open()、open()的详细使用
读写文件背景 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘. 读写文件就是请求 ...
- JS生成全局唯一标识符(GUID,UUID)的方法
全局唯一标识符(GUID,Globally Unique Identifier)也称作 UUID(Universally Unique IDentifier) . GUID是一种由算法生成的二进制长度 ...
- JMeter接口测试-JDBC测试
前言 今天我们一起来学习如何利用JMeter连接数据库进行测试吧! 一:添加线程组,再添加JDBC Connection Configuration(右键测试计划-->配置元件-->JDB ...
- cir from c# 托管堆和垃圾回收
1,托管堆基础 调用IL的newobj 为资源分配内存 初始化内存,设置其初始状态并使资源可用.类型的实列构造器负责设置初始化状态 访问类型的成员来使用资源 摧毁状态进行清理 释放内存//垃圾回收期负 ...