python 数据分析基础 day12-python调用mysqlmysqlcilent介绍创建数据表插入数据选取数据修改数据删除数据删除表

今天是读《python数据分析基础》的第11天,今天的读书笔记的内容为通过MysqlcCient模块来使用mysql数据库。

mysqlcilent介绍

mysql与python连接的包名为mysql-python, 不过在python3.x中这个包的名字为mysqlclient,调用时包的名称则为MySQLdb。 使用方式与sqlite3类似,先链接数据库,再创建游标,通过cursor.execute()执行sql语句,再通过connection.commit()提交事务。 注: 1.进行以下操作时,必须确保mysql服务已经开启。 2.下文操作所涉及的数据库pydatabase已实现通过mysql生成。

创建数据表

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#创建表
cur.execute('CREATE TABLE IF NOT EXISTS test(ID long,text varchar(20),score float)')

#关闭游标及数据库连接
cur.close()
con.close()

插入数据

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#插入数据
data=[(1,'a',12.5),(2,'b',10.3),(3,'c',11.0)]
for row in data:
    cur.execute('INSERT INTO test VALUES(%s,%s,%s);',row)
con.commit()

#关闭游标及数据库连接
cur.close()
con.close()

选取数据

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#选取数据
cur.execute('SELECT * FROM test;')
rows=cur.fetchall()
for row in rows:
    print(row)

#关闭游标及数据库连接
cur.close()
con.close()

修改数据

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#更新数据
cur.execute('UPDATE test SET score=score+1.0;')
con.commit()

#关闭游标及数据库连接
cur.close()
con.close()

删除数据

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#删除数据
cur.execute('DELETE FROM test;')

#关闭游标及数据库连接
cur.close()
con.close()

删除表

import MySQLdb

#连接mysql数据库
con=MySQLdb.connect(host='localhost',port=3306,db='pydatabase',user='user',passwd='pass')
#生成游标
cur=con.cursor()

#删除表
cur.execute('DROP TABLE test;')

#关闭游标及数据库连接
cur.close()
con.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构沉思录

听说你还不会看MySQL慢查询日志?

MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。

981
来自专栏架构之路

mysql 通过慢查询日志查写得慢的sql语句

MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 会写一个包含...

3704
来自专栏技术博文

mysql导出select结果到文件

mysql -hxx -uxx -pxx -e "query statement" db > file  例如:  mysql -h127.0.0.1 -uro...

3774
来自专栏大白虾谈架构

mysql 远程连接数据库的二种方法

4.7K3
来自专栏搜云库

Mycat 读写分离 数据库分库分表 中间件 安装部署,及简单使用

MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可...

5508
来自专栏乐沙弥的世界

MongoDB 索引创建

七、更多参考 MongoDB 单键(列)索引 MongoDB 复合索引 MongoDB 多键索引 MongoDB 执行计划获取(db.colle...

2340
来自专栏我的博客

ADODB简介以及简单使用

1、adodb数据库类介绍(http://adodb.sourceforge.net/) 虽然 PHP 是建构 Web 系统强有力的工具,但是 PHP 存取数据...

3537
来自专栏乐沙弥的世界

MySQL 通用查询日志(General Query Log)

    同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分。MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志,慢查询日...

4723
来自专栏全华班

数据库事务理解

事物 本章讲述了三种常见的数据操作语句Insert /Update / Delete的基本语法,也提到了Oracle9i新的数据操作语句 – Merge的作用和...

3095
来自专栏喵了个咪的博客空间

原 EMQ百万级MQTT消息服务(ACL鉴权)

虽然EMQ已经搭建起来了,但是投入到业务使用中还面临着一些问题,当然MQTT设计之初也考虑了这一点,比如不是任何一个客户端都能链接到服务器和限制客户端能够对to...

5604

扫码关注云+社区

领取腾讯云代金券