DC学院学习笔记(九):利用Python进行数据库操作

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 利用Python进行数据库操作
+关注继续查看

用python进行数据库操作,感觉蛮酷的。

PyMySQL

安装

OK,最新的安装已经支持pip。

pip install pymysql

创建名为user的表格以备后续操作

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数据库
  • 创建新的数据
  • 数据的调用

连接MySQL数据库

import pymysql.cursors
#使用pymysql指令来连接数据库
connection=pymysql.connect(host='',user='',password='',db='',charset='',cursorclass=pymysql.cursors.DictCursor
)
host:要连接的数据库的IP地址
user:登录的账户名,如果登录的是最高权限账户则为root
password:对应的密码
db:要连接的数据库,如需要访问上节课存储的IRIS数据库,则输入'IRIS'
charset:设置编码格式,如utf8mb4就是一个编码格式
cursorclass:返回到Python的结果,以什么方式存储,如Dict.Cursor是以字典的方式存储

创建新的数据

try:
    #从数据库链接中得到cursor的数据结构
    with connection.cursor() as cursor:
    #在之前建立的user表格基础上,插入新数据,这里使用了一个预编译的小技巧,避免每次都要重复写sql的语句
        sql="INSERT INTO `USERS`(`email`,`password`) VALUES (%s,%s)"
        cursor.execute(sql,('webmaster@python.org','very_secret'))
    #执行到这一行指令时才是真正改变了数据库,之前只是缓存在内存中

    connection.commit()

调用数据

    with connection.cursor() as cursor:
        sql = "SELECT `id`,`password` FROM `user` WHERE `email`=%s"
        cursor.execute(sql,('webmaster@python.org',))
        #只取出一条结果
        result=cursor.fetchone()
        print(result)

#最后别忘了关闭连接
finally:
    connection.close()

结果

{'password': 'very-secret', 'id': 1} 
目录
相关文章
|
Web App开发 数据采集 JavaScript
|
数据采集 Python
|
数据采集 XML 数据格式
|
数据采集 Python 机器人
|
Web App开发 数据采集 移动开发
|
Web App开发 数据采集 缓存
DC学院爬虫学习笔记(一):什么是爬虫?
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本
2694 0
|
数据挖掘 数据可视化 定位技术
|
机器学习/深度学习 TensorFlow 算法框架/工具
DC学院学习笔记(二十三):进阶机器学习技术概览
高阶的机器学习算法:深度学习,强化学习及迁移学习简单了解
2182 0
|
数据挖掘 Python
|
机器学习/深度学习 Python
DC学院学习笔记(二十一):用特征选择方法优化模型(二)
用特征选择方法优化模型:随机森林和L1正则化Lasso
2162 0
推荐文章
更多