继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

python操作MySQL数据库

慕粉3511587
关注TA
已关注
手记 2
粉丝 3
获赞 86

1、安装MySQLDB,Windows访问地址:http://sourceforge.net/projects/mysql-python,(Linux访问地址:https://pypi.python.org/pypi/MySQL-python
2、连接数据库connect(host,user,passwd,db,port,charset),conn = connect('localhost', 'root', '123456', 'test'),释放连接使用close方法,conn.close()
3、cuesor对象,执行MySQL语句前要获得有个制定的cursor对象,由cursor对象 执行MySQL查询并获取结果,
4、事务机制可以确保数据的一致性,必须满足条件:
atomicity(原子性):一组事务要么成功要么撤回
consistency(稳定性):有非法数据,事务撤回
islation(隔离性):独立运行
durability(可靠性):软、硬件崩溃innoDB数据表驱动会利用日志文件重构修改
5、execute()方法:
import mysqldb
db = mysqldb.connect('localhost', 'root', '123456', 'test')
cursor = db.cursor()
cursor.execute('drop table employee')
sql = """create table employee (first_name char(20) not null, last_name char(20), age int, sex char(1), income float )"""
cursor.execute(sql)
db.close()
6、查询操作:
fetchone():获取下一个查询结果
fetchall():接受全部的返回结果
rowcount:返回execute()方法执行后影响的行数
7、错误处理:
Warning:当有严重警告时触发,例如插入数据是被截断等等。必须是 StandardError 的子类
Error:警告以外所有其他错误类。必须是 StandardError 的子类
InterfaceError:当有数据库接口模块本身的错误(而不是数据库的错误)发生时触发。 必须是Error的子类
DatabaseError:和数据库有关的错误发生时触发。 必须是Error的子类
DataError:当有数据处理时的错误发生时触发,例如:除零错误,数据超范围等等。 必须是DatabaseError的子类
OperationalError:指非用户控制的,而是操作数据库时发生的错误。例如:连接意外断开、 数据库名未找到、事务处理失败、内存分配错误等等操作数据库是发生的错误。 必须是DatabaseError的子类
IntegrityError:完整性相关的错误,例如外键检查失败等。必须是DatabaseError子类
InternalError:数据库的内部错误,例如游标(cursor)失效了、事务同步失败等等。 必须是DatabaseError子类
ProgrammingError:程序错误,例如数据表(table)没找到或已存在、SQL语句语法错误、 参数数量错误等等。必须是DatabaseError的子类
NotSupportedError:不支持错误,指使用了数据库不支持的函数或API等。例如在连接对象上 使用.rollback()函数,然而数据库并不支持事务或者事务已关闭。 必须是DatabaseError的子类

打开App,阅读手记
9人推荐
发表评论
随时随地看视频慕课网APP