1.安装pymysql

MySQL【五】与python交互_实例化

 安装pymysql

pip install pymysql

2.游标(cursor)的使用


cursor,就是一个标识,用来标识数据可以理解成数组中的下标  。

一、声明一个游标: declare 游标名称 CURSOR for table;(这里的table可以是你查询出来的任意集合)
    二、打开定义的游标:open 游标名称;
    三、获得下一行数据:FETCH  游标名称 into testrangeid,versionid;
    四、需要执行的语句(增删改查):这里视具体情况而定
    五、释放游标:CLOSE 游标名称;


  • 首先fetchone()函数它的返回值是单个的元组,也就是一行记录,如果没有结果,那就会返回null
  • 其次是fetchall()函数,它的返回值是多个元组,即返回多个行记录,如果没有结果,返回的是()
  • fetchall(参数),写几条返回几条
#举个例子:cursor是我们连接数据库的实例

fetchone()的使用:

cursor.execute(select username,password,nickname from user where id='%s' %(input)

result=cursor.fetchone(); 此时我们可以通过result[0],result[1],result[2]得到username,password,nickname

fetchall()的使用:

cursor.execute(select * from user)

result=cursor.fetchall();此时select得到的可能是多行记录,那么我们通过fetchall得到的就是多行记录,是一个二维元组

((username1,password1,nickname1),(username2,password2,nickname2),(username3,password3,nickname))

简单demo:

from pymysql import *


# pymysql操作数据库流程:开始-创建connection-获取cursor-mysql语句-关闭cursor-关闭connection-结束

def main():
#创建connection连接 连接对象
conn = connect(host = "localhost", port = 3306, user = 'root', password = '123456', database = 'jing_dong', charset = 'utf8')

#获取Cursor对象 游标对象
cs1 = conn.cursor()
count = cs1.execute('select id, name from goods where id > 4') #execute写sql语句
print("打印受影响的行数:", count)

# print(cs1.fetchall())
# print(cs1.fetchmany(2))
for i in range(count):
#获取查询的结果
result = cs1.fetchone() #返回一个元组一条一条取 fetchmany()和fetchall()返回的结果是元组套元组
print(result)

#关闭cursor,关闭连接
cs1.close()
conn.close()

if __name__ == '__main__':
main()

根据实际需求选择对应fetch函数

line=cursor.fetchone()

line[0]
line[1]
#一列一列取出

lines=cursor.fetchmany(5)
for temp in lines:
print(temp)
#一个元组一个元组取出

3.京东商城查询

python staticmethod 返回函数的静态方法。

该方法不强制要求传递参数,如下声明一个静态方法:

class C(object):
@staticmethod
def f(arg1, arg2, ...):
...

以上实例声明了静态方法 f,从而可以实现实例化使用 C().f(),当然也可以不实例化调用该方法 C.f()。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

class C(object):
@staticmethod
def f():
print('runoob');

C.f(); # 静态方法无需实例化
cobj = C()
cobj.f() # 也可以实例化后调用


#输出结果:
runoob
runoob