[Mysql]Python与数据库的使用

  在Python中,要想方便地操纵数据库通常会借助相关的数据库接口,通常这个python的数据库驱动是需要自己去网上或通过pip下载的,我原本使用 pip install MySQL-python 想直接安装成功,想不到出现好几些错误,于是,趁着刚好是Windows系统,直接去网上搜到了 exe 安装文件,找对自己的版本在以下网站中下载并安装:

  1. https://pypi.python.org/pypi/MySQL-python //感觉这里不全,或者没找到吧…
  2. http://www.codegood.com/downloads //我是在这下载的惹..

      在确保自己安装mysql服务并启动的情况下就可以在Python的交互式界面测试是否安装成功了
    测试代码如下:

import MySQLdb      //导入mysql-python模块

db = MySQLdb.connect(user = 'root')     //以管理员身份连接数据库
cursor = db.cursor()                    //获取数据库游标
cursor.execute('select version()')      //执行SQL语句查询数据库版本
data = cursor.fetchone()                //使用游标执行结果中的第一条
print data                              //打印出来

安装成功如下:
这里写图片描述

  安装成功后就到了使用环节了,想深入了解MySQLdb对象可以使用help()命令,我看那黑框框中乱糟糟的英文看的头疼。本着使用多少学多少的原则,简单来说,想利用python操纵数据库的方式大多都是:

创建connect -> 获取cursor -> 利用cursor执行SQL语句 -> 关闭cursor -> 关闭 connect

   创建connect中经常使用的字典参数有:

NameType
hoststring
userstring
passwdstirng
dbstring
portinteger

   连接之后就是获取游标了,按照《python核心编程》书上P207,游标(Cursor)的常用属性/方法有:

对象属性描述
arraysize            使用fetchmany()方法时,一次取出的结果行数,默认为1
connection创建此游标的连接(可选)
description返回游标活动状态(7项元祖):(name,type_code,display_size,internal_size(name,type_code,display_size,internal_size, precision,scale,null_ok),只有name和type_code是必选的
lastrowid上次修改行的行ID(可选,如果不支持行ID,则返回Node)
rowcount上次execute*()方法处理或影响的行数
callproc(func [,args])调用存储过程
close()关闭游标
execute(op[,args])执行数据库查询或命令
executemany(op,args)类似execute和map()的结合,为给定的所有参数准备并执行数据库查询或命令
fetchone()获取查询结果的下一行
fetchmany([size=cursor,arraysize)获取查询结果下面的size行
fetchall()获取查询结果的所有(剩余)行
__iter__()为游标创建迭代器对象(可选,参考next())
messages游标执行后从数据库中获得的消息列表(元祖集合,可选)
next()被迭代器用于获取查询结果的下一行(可选,类似fetchone(),参考__iter__())
nextset()移动到下一个结果集合(如果支持)
rownumber当前结果集中游标的索引(以行为单位,从0开始,可选)
setinputsizes(sizes)设置允许的最大输入大小(必须有,但是实现是可选的)
setoutputsize(size[,col])设置大列获取的最大缓冲区大小(必须有,但是实现是可选的)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值