python连mysql数据库的方法
小编给大家分享一下python连mysql数据库的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
一、Python连接MySQL数据库
1、导入模块
#导入模块importpymysql
相关课程推荐:Python基础视频教程(python语言基础)
2、打开数据库连接
#打开数据库连接#注意:这里已经假定存在数据库testdb,db指定了连接的数据库,当然这个参数也可以没有db=pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='1234',db='testdb',charset='utf8')
3、创建游标对象cursor
#使用cursor方法创建一个游标cursor=db.cursor()
二、数据库基本操作
使用execute()方法来实现对数据库的基本操作。
1、查询数据库版本
#查询数据库版本cursor.execute("selectversion()")data=cursor.fetchone()print("DatabaseVersion:%s"%data)
2、创建数据库
#创建数据库testcursor.execute("dropdatabaseifexiststest")#如果数据库已经存在,那么删除后重新创建sql="createdatabasetest"cursor.execute(sql)
3、创建数据表
#创建数据库表cursor.execute("droptableifexistsemployee")#如果数据表已经存在,那么删除后重新创建sql="""CREATETABLEEMPLOYEE(FIRST_NAMECHAR(20)NOTNULL,LAST_NAMECHAR(20),AGEINT,SEXCHAR(1),INCOMEFLOAT)"""cursor.execute(sql)
4、查询操作
#查询数据表数据sql="select*fromemployee"cursor.execute(sql)data=cursor.fetchone()print(data)
5、插入操作
#插入数据sql="insertintoemployeevalues('李','梅',20,'W',5000)"cursor.execute(sql)db.commit()#查看插入后的结果sql="select*fromemployee"cursor.execute(sql)data=cursor.fetchone()print(data)
6、指定条件查询数据
#指定条件查询数据表数据sql="select*fromemployeewhereincome>'%d'"%(1000)cursor.execute(sql)data=cursor.fetchone()print(data)
7、更新操作
#更新数据库sql="updateemployeesetage=age+1wheresex='%c'"%('W')cursor.execute(sql)db.commit()#查看更新后的结果sql="select*fromemployee"cursor.execute(sql)data=cursor.fetchone()print(data)
8、删除操作
#删除数据sql="deletefromemployeewhereage>'%d'"%(30)cursor.execute(sql)db.commit()#查看更新后的结果sql="select*fromemployee"cursor.execute(sql)data=cursor.fetchone()print(data)
三、关闭数据库连接
db.close()
四、其他
1、说明
·上例中"sql=..."语句,是经典的MySQL语句的形式,将数据库语句写在双引号内,形成类似字符串的形式;
·使用cursor对象的execute()方法具体执行数据库的操作;
·对于插入、更新、删除等操作,需要使用db.commit()来提交到数据库执行,对于查询、创建数据库和数据表的操作不需要此语句。
2、为有效避免因为错误导致的后果,使用以下方式来执行数据库的操作:
try:#执行SQL语句cursor.execute(sql)#提交修改db.commit()except:#发生错误时回滚db.rollback()
以上是python连mysql数据库的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。