MySQL数据库进阶(API的理解、Python对MySQL的接口)
文章目录
- 一、API的理解
- 二、Python对MySQL的API
本篇文章主要是关于Python对MySQL的接口API的内容,简单来说就是在Python中调用MySQL语句来执行
一、API的理解
1、API的全称是:应用程序编程接口
是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。——百科
2、简单的小故事理解API:
研发人员A开发了软件A,研发人员B正在研发软件B。
有一天,研发人员B想要调用软件A的部分功能来用,但是他又不想从头看一遍软件A的源码和功能实现过程,怎么办呢?
研发人员A想了一个好主意:
我把软件A里你需要的功能打包好,写成一个函数;你按照我说的流程,把这个函数放在软件B里,就能直接用我的功能了!
(故事来自:https://www.zhihu.com/question/38594466/answer/487039892)
二、Python对MySQL的API
1、安装pymysql库
pip install pymysql
pymysql其实就是一个python与MySQL的一个接口,就是在python里面去操纵MySQL的一种方式
2、导入pymysql库并连接上本机的MySQL账户
import pymysql # 导入库
# 连接上MySQL
conn = pymysql.connect(host='192.168.43.247', port=3306, user='root', passwd='sqlpwd', db='db_test')
3、创建一个普通游标
创建游标(类似光标),并绑定上关联了MySQL的conn
游标:cursor
cursor = conn.cursor()
4、执行MySQL的操作语句
操作:execute
# 写MySQL的操作语句
sql = "CREATE TABLE EMPLOYEE (id INT, name VARCHAR(20))"
# 将MySQL的操作语句放进execute执行
# 操作游标,一切关于MySQL的操作都可以放在这里来执行
cursor.execute(sql)
5、插入数据
以上是创建了一个EMPLOYEE数据表,现在插入数据
仍然是用:execute
cursor.execute("INSERT INTO EMPLOYEE values (1,'ViewIn'),(2,'ZaHuw'),(3,'Lily')")
注意:
插入数据必须要提交一下才行,相当于创建一个对象操作完了需要关闭一下
conn.commit()
cursor.close()
conn.close()
因此,这段代码应该放在结尾
6、查询数据
- 一条结果:fetchone
- 两条结果:fetchmany(2)
所有结果:fetchall
如果操作后有结果,需要用一个变量来接收一下
ret= cursor.execute(“select * from employee”)
取出所有结果
print(cursor.fetchall())
这样就能取出所有结果了
7、scroll光标
1)光标的relative模式:
数字1表示设置光标向下移动一步,-2表示向上移动两步;0表示不移动
本来fetchone一下光标在id=2的位置,scroll一下就到id=3的位置了
print(cursor.fetchone())
cursor.scroll(1,mode="relative")
# 光标的relative模式
# 1表示设置光标向下移动一步,-2表示向上移动两步;0表示不移动
# 本来fetchone一下光标在id=2的位置,scroll一下就到id=3的位置了
print(cursor.fetchone())
print("------------------------------------")
2)光标的absolute模式:
直接将光标跳到某个位置(按照索引来的,2表示id=3)
cursor.scroll(2,mode="absolute")
print(cursor.fetchone())
8、创建字典形式的游标
字典形式的光标获取的结果就是字典类型
cursor= conn.cursor(cursor=pymysql.cursors.DictCursor)
还没有评论,来说两句吧...