Python 连接、操作数据库
使用python3+pymysql
一、安装python3
a) 从网上下载安装吧
二、安装pymysql
https://pypi.python.org/pypi/PyMySQL
https://github.com/PyMySQL/PyMySQL
当然,最简单的安装方式还是使用pip命令。
> pip install PyMySQL
安装完成后,查看pymysql是否安装成功:pip show pymysql
二,创建MySQL表
执行下面的SQL语句,创建一张users 表。
CREATE TABLE `users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`email` VARCHAR(255) COLLATE utf8_bin NOT NULL,
`password` VARCHAR(255) COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin
AUTO_INCREMENT=1 ;
三,Python操作MySQL
接下来才是重点,Python操作MySQL数据库。
4.1插入数据:
不管你使用的是什么工具或库,连接数据库这一步必不可少。host为数据库的主机IP地址,port为MySQL的默认端口号,user为数据的用户名,password为数据库的登录密码,db为数据库的名称。
cursor()方法创建数据库游标。
execute()方法执行SQL语句。
commit()将数据库的操作真正的提交到数据。
代码如下:
#!/usr/bin/env python
# -*- coding: utf- -*-
# @Author: Dang Kai
# @Date: -- ::
# @Last Modified time: -- ::
# @E-mail: @qq.com
# @Description: import pymysql.cursors # 连接数据库 def connect_mysql(host, port, user, password, db): connection = pymysql.connect(host=host, port=port, user=user, password=password,
db=db, charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor)
print('connect success') config = {
'host': 'localhost',
'port': ,
'user': 'root',
'password': 'dk137046',
'db': 'test',
'charset': 'utf8mb4',
'cursorclass': pymysql.cursors.DictCursor,
}
'''使用字典连接'''
connection = pymysql.connect(**config)
print('connect success') def insert_Mysql(config, sql):
'''插入sql'''
cursor = connection.cursor()
cursor.execute(sql)
connection.commit()
print('插入成功')
# result=cursor.fetchone()
# print(result)
connection.close() if __name__ == '__main__':
# connect_mysql('localhost', , 'root', 'dk137046', 'test') insert_sql = "INSERT INTO users (email,password) VALUES ('1370465454@qq.com','123456');"
insert_Mysql(config, insert_sql)
4.2. 查询数据
接下来的操作就是数据库的查询了。
fetchone() 用于查询单条数据。
fetchall() 用于查询多条数据。
close() 最后不要忘记了关闭数据连接。
#!/usr/bin/env python
# -*- coding: utf- -*-
# @Author: Dang Kai
# @Date: -- ::
# @Last Modified time: -- ::
# @E-mail: @qq.com
# @Description: import pymysql.cursors # 连接数据库 def connect_mysql(host, port, user, password, db): connection = pymysql.connect(host=host, port=port, user=user, password=password,
db=db, charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor)
print('connect success') config = {
'host': 'localhost',
'port': ,
'user': 'root',
'password': 'dk137046',
'db': 'test',
'charset': 'utf8mb4',
'cursorclass': pymysql.cursors.DictCursor,
}
'''使用字典连接'''
connection = pymysql.connect(**config)
print('connect success') def insert_Mysql(config, sql):
'''插入sql'''
cursor = connection.cursor()
cursor.execute(sql)
# connection.commit()
# print('插入数据成功')
result=cursor.fetchone()
print(result)
result1=cursor.fetchall()
# print(result1)
for data in result1:
print(data)
connection.close() if __name__ == '__main__':
# connect_mysql('localhost', , 'root', 'dk137046', 'test') # insert_sql = "INSERT INTO users (email,password) VALUES ('1370465454@qq.com','123456');"
# insert_Mysql(config, insert_sql)
query_sel="SELECT * FROM users"
insert_Mysql(config, query_sel)
运行结果:
connect success
{'id': 1, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 2, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 3, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 26, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 29, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 30, 'email': '1370465454@qq.com', 'password': '123456'}
{'id': 31, 'email': '1370465454@qq.com', 'password': '123456'}
[Finished in 0.2s]
Python 连接、操作数据库的更多相关文章
- python 连接操作数据库(二)
一.我们接着上期的博客继续对ORM框架进行补充,顺便把paramiko模块也给大家讲解一下: 1.ORM框架: 在连接操作数据库的第一个博客中也已经说了,sqlalchemy是一个ORM框架,总结就是 ...
- python 连接操作数据库(一)
一.下面我们所说的就是连接mysql的应用: 1.其实在python中连接操作mysql的模块有多个,在这里我只给大家演示pymysql这一个模块(其实我是感觉它比较好用而已): pymysql是第三 ...
- Python连接操作数据库
步骤: 1.创建与数据库的连接对象: 2.创建游标: 3.通过游标执行语句 4.增删改需要提交(commit)数据 5.关闭连接 如: import MySQLdb # Python通过MySQL ...
- Python——连接操作数据库
1.安装MySQL驱动程序.下载自动安装包,双击安装即可,非常简单. 2.连接MySQL,下面是Python示例代码. import MySQLdbconn=MySQLdb.connect(host= ...
- MySQL---连接器(python如何操作数据库媒介,基于python语言)
MySQL — 连接器 连接器的概念 它们往往是一类Python包,或者是一类已经写好的Python库.这些库提供了我们Python去连接数据库服务器的基本功能. 既然它是一个包,那么我们首先学会 ...
- 【Python实战】使用Python连接Teradata数据库???未完成
1.安装Python 方法详见:[Python 05]Python开发环境搭建 2.安装Teradata客户端ODBC驱动 安装包地址:TTU下载地址 (1)安装TeraGSS和tdicu(ODBC依 ...
- Python连接MySQL数据库的多种方式
上篇文章分享了windows下载mysql5.7压缩包配置安装mysql 后续可以选择 ①在本地创建一个数据库,使用navicat工具导出远程测试服务器的数据库至本地,用于学习操作,且不影响测试服务器 ...
- pymysql模块使用---Python连接MySQL数据库
pymysql模块使用---Python连接MySQL数据库 浏览目录 pymysql介绍 连接数据库 execute( ) 之 sql 注入 增删改查操作 进阶用法 一.pymysql介绍 1.介绍 ...
- 孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库
孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数据库服 ...
- Python 连接Oracle数据库
连接:python操作oracle数据库 python——连接Oracle数据库 python模块:cx_Oracle, DBUtil 大概步骤: 1. 下载模块 cx_Oracle (注意版本) ...
随机推荐
- MB Star C5 Functions
The MB STAR C5 notion and brand combination for hardware and software program components will be the ...
- T-SQL 聚合函数Count与NULL
大家都知道聚合函数是做统计用的,而count函数是统计行数的,也就是满足一定条件记录的行数. 下面我们来看下这个count与NULL的微妙关系. CREATE TABLE dbo.Student ( ...
- Django media的设置
django在定义模型时需要一些上传的文件,例如图片 class Banner(models.Model): """ 轮播图models titles 标题 images ...
- 为什么 c++中函数模板和类模板的 声明与定义需要放到一起?
将模板的声明与定义写在一起实在很不优雅.尝试用“传统”方法,及在.h文件里声明,在.cpp文件里定义, 然后在main函数里包含.h头文件,这样会报链接错误.why!!!!!!!!!!!!! 这是因为 ...
- JavaSE---NIO
1.概述 1.1 BIO的问题: 读取输入流中的数据时,如果没有读到有效数据,该线程将被阻塞: 传统输入.输出流都是阻塞式的: 传统的输入.输出流都是通过字节移动处理: 面向流的输入.输出一次只能处理 ...
- 缺少Packages?不妨在这里找
一个很全的网站(Linux全平台,rpm,dpkg等) Packages Search
- Ztree 默认展开二级菜单
在初始加载树形控件的时候调用zTree的expandNode (node, expandFlag, sonSign, focus, callbackFlag)方法 node:树形节点 expandFl ...
- Mybatis学习笔记18 - 缓存
两级缓存: 一级缓存:(本地缓存):sqlSession级别的缓存.一级缓存是一直开启的:SqlSession级别的一个Map 数据库同一次会话期间查询到的数据会放在本地缓存中.以后如果需要获取相同的 ...
- oracle impdp时卡死Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
今天在用impdp导入时,Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX卡在建索引的过程一直不动,也不报错,重试了好几遍还是这样. 后来恍 ...
- java 与 数据库的连接
Eclipse中使用SQL server 2017数据库 一.准备材料 要能够使用数据库就要有相应的JDBC,所以我们要去Microsoft官网下载https://www.microsoft.com/ ...