Python之操作MySQL数据库
Posted 学而时习之,不亦说乎
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之操作MySQL数据库相关的知识,希望对你有一定的参考价值。
一、操作步骤
1、导入pymysql模块
2、建立连接(ip、用户名、密码、数据库名、端口号、字符集)
3、建立游标
4、执行sql语句
5、关闭游标
6、关闭连接
import pymysql host=‘xxx.xxx.xxx.xxx‘ user=‘abc‘ password=‘123456‘ #密码只能是字符串 db=‘database_name‘ port=3306 #端口号只能写int类型 charset=‘utf8‘ #只能写utf8,不能写utf-8 #建立连接 conn=pymysql.connect(host=host,password=password,user=user,db=db, port=port,charset=charset) #建立游标 cur=conn.cursor() res=cur.execute(‘show tables;‘) #只是帮你执行sql语句,不会返回执行结果 #print(res) #结果为执行语句的指针序列号 print(cur.fetchall()) #获取数据库里面的所有表,返回的是一个二维数组,一个大数组,里面是每个表 #关闭游标 cur.close() #关闭连接 conn.close()
二、执行sql语句
- cur.execute(‘sql语句‘)
cur.execute(‘select * from app_myuser limit 5;‘) #获取一张表中的所有信息 print(cur.fetchall())
三、返回sql语句执行结果
- print(cur.fetchall())
- print(cur.fetchone())
print(cur.fetchall()) print(cur.fetchone()) #返回结果为空,因为上面已经执行到最后了,游标到尾了,类似于文件指针 #先注释掉.fetchall()再运行即可 print(cur.fetchone()) #每次取一行数据
.fetchall()和.fetchone()的区别:
- 在不知道一共多少条的情况下,只能使用.fetchall()
- .fetchall()返回的是二维数组,取字段时不方便
- .fetchone()返回的是一维数组,当结果只有一条时,使用.fetchone()比较方便
以上是关于Python之操作MySQL数据库的主要内容,如果未能解决你的问题,请参考以下文章