python 之操作mysql 数据库实例
对于python操作mysql 数据库,具体的步骤应为:
1. 连接上mysql host 端口号 数据库 账号 密码
2. 建立游标
3. 执行sql(注意,如果是update,insert,delete 需要进行提交才能生效。)
4. 获取结果
5. 关闭连接、关闭游标
一、默认获取的结果是元祖
conn = pymysql.connect(host='localhost',user='root',passwd='',port=3306,db='sakila',charset='utf8')
#charset 必须写utf8, 不能写utf-8; port 要写int 类型,不能加上引号
cur = conn.cursor() # 建立游标,游标认为你是仓库管理员
cur.execute('select * from user limit 10;')
res = cur.fetchone() # 只获取一条结果,它的结果是一个一维元祖,第一次获取到第一条
##print('fetchone',cur.fetchone()) # 第二次获取到的是第二行;
print(res)
print('fetchall',cur.fetchall())# 获取第二条开始的所有数据,获取sql语句执行的结果, 是个二维元祖,它把结果放到一个元祖里,每一条数据也是一个元祖
print(res)
print(res[0][1])
print('fetchone',cur.fetchone()) # #被获取完了,所以获取到的是None
# 如果确定只有一条数据的用fetchone, 超过一条数据的那就用fetchall
二、将获取的结果转字典,方便使用
conn = pymysql.connect(host='localhost',user='root',passwd='',port=3306,db='sakila',charset='utf8')
cur = conn.cursor(cursor=pymysql.cursors.DictCursor) # 将元祖转为字典
sql = "select * from user where name='aa'"
cur.execute(sql)
print(cur.fetchone()) #获取字典
res = cur.fetchall()
print(res) #list 里存字典
cur.close()#关闭游标
conn.close()#关闭连接
在python 中会经常用到mysql,因此可以写了一个函数用于mysql的操作,要使用时调用以下即可。
import pymysql
def op_mysql(host,user,password,db,sql,port=3306,charset='utf8'):
conn = pymysql.connect(host=host,user=user,
password=password,
db=db,
port=port,
charset=charset)
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute(sql)
# select, update, delete, insert 长度都是6位
# SELECT
sql_start = sql[:6].upper() # sql 的前6位字符串,判断它是什么类型的sql语句
if sql_start == 'SELECT':
res = cur.fetchall()
else:
conn.commit()
res = 'ok'
cur.close()
conn.close()
return res
sql = 'select * from user limit 5;'
op_mysql(
host='localhost',
user='root',
password='',
port=3306,
db='sakila',
charset='utf8',
sql=sql)
python 之操作mysql 数据库实例的更多相关文章
- Python MySQLdb模块连接操作mysql数据库实例_python
mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法.python操作数据库需要安装一个第三方的模块,在http://mysql ...
- python 2.7 操作mysql数据库 实例
create table msg(id int primary key auto_increment,title varchar(20),name varchar(60),content varcha ...
- Python之 操作 MySQL 数据库
什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. 安装 Pytho ...
- shell脚本连接、读写、操作mysql数据库实例
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- python实现操作mysql数据库
实现代码如下: #mysql数据库的查询等 import pymysql from xctest_tools.xc_ReadFile.get_ReadTxt import * class mysql: ...
- python 安装操作 MySQL 数据库.
以ubuntu和mysql为例 检查自己的机器上面有没有安装数据库 xpower@xpower-CW65S:~$ sudo service mysql start [sudo] xpower 的密码: ...
- Python之操作MySQL数据库
一.操作步骤 1.导入pymysql模块 2.建立连接(ip.用户名.密码.数据库名.端口号.字符集.(自动提交参数)) 3.建立游标 4.执行sql语句 (4.需要提交的提交) 5.关闭游标 6 ...
- python 连接操作mysql数据库
开发数据库程序流程: 1.创建connection对象,获取cursor 2.使用cursor执行SQL 3.使用cursor获取数据.判断执行状态 4.提交事务 或者 回滚事务 import: 数据 ...
- python,java操作mysql数据库,数据引擎设置为myisam时能够插入数据,转为innodb时无法插入数据
今天想给数据库换一个数据引擎,mysiam转为 innodb 结果 python 插入数据时失败,但是自增id值是存在的, 换回mysiam后,又可以插入了~~ 想换php插入试试,结果php数据引擎 ...
随机推荐
- Ubuntu16.04+cuda8.0+cuDNNV5.1 + Tensorflow+ GT 840M安装小结
最近重装系统,安装了tensorflow的配置环境 总结一下. 参考资料 http://blog.csdn.net/ZWX2445205419/article/details/69429518 htt ...
- 嵌入式开发之gb281818
http://www.cnblogs.com/snake-hand/p/3157176.html http://blog.csdn.net/voipmaker/article/category/140 ...
- web 前端 转盘界面
http://www.cnblogs.com/arfeizhang/p/turntable.html "如果有个做转盘的需求,你准备怎么做?设计师只会提供一个转盘的图片,其余都需要你完成,不 ...
- iOS自动化测试需求实现(iOS按键精灵类似)
需求分析: 作为以需求为驱动的IT公司,有再奇怪的需求都不奇怪,所以“24小时循测第三方应用”这样的需求也可以接受.业务需求重点为: 1.24小时循测 2.无人值守,自动完成 3.自动界面操作(点击. ...
- js函数柯里化
function curry(fn){ // 代码 } function add(a,b,c){ return a + b + c; } const execAdd = curry(add); exe ...
- UE4读取配置文件里面的key-value
在MyProject/Config/DefaultGame.ini配置文件中添加 [RamaUDP]listenPort=2017PrintLog=false C++代码读取 int32 listen ...
- Win7下搭建安卓android开发环境
本文出自 “孤狼” 博客,请务必保留此出处http://332374363.blog.51cto.com/5262696/1310882 另外,在搭建android开发环境时,还参考了http://w ...
- fopen()函数文件模板中w,w+,a,a+的区别
"w" 写入方式打开,将文件指针指向文件头并将文件大小截为零.如果文件不存在则尝试创建之. "w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零.如果 ...
- 让asp.net程序在修改web.config后不重启
默认情况下web.config修改后,asp.net程序会被重启.为了防止程序重启,要修改machine.config 文件. machine.config默认在C:\WINDOWS\Microsof ...
- 转载hiberinate的懒加载
Hibernate的强大之处之一是懒加载功能,可以有效的降低数据库访问次数和内存使用量.但用的不好就会出现org.hibernate.LazyInitializationException. 这个异常 ...