1.pymysql是用于与mysql链接的一个模块mysql
使用pymysql的增删改查sql
增删改:数据库
使用增删改必定要用commit提交ide
print(cursor.lastrowid)#打印从自增列的id,从第几列开始插入就打印几
import pymysql conn=pymysql.connect(host='localhost',user='root',password='',database='db6') cursor=conn.cursor() # sql="delete from userinfo where id>=3;"#sql就是mysql的执行语句 sql="insert into userinfo(username,password) values ('xuxu','xuxu123'),('lala','lala123');" r=cursor.execute(sql)#r是受影响的行数 print(r) print(cursor.lastrowid)#打印从自增列的id,从第几列开始插入就打印几 #增删改必需要commit提交到数据库,查能够不用 conn.commit() cursor.close() conn.close()
查:fetch
import pymysql conn=pymysql.connect(host='localhost',user='root',password='',database='db6') # cursor=conn.cursor()#不传任何参数,取回的是字典形式的数据 cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)#这样取回的是字典类型的数据 #注意这里的sql语句必定不要用占位符后面本身拼接,这样是为了防止sql注入 sql = "select * from userinfo where username=%s and password=%s;"#%(user,pwd,)这样不能够 cursor.execute(sql,("lqz","123456")) result=cursor.fetchone() #用的最多的就是fetchone和fetchall,若是后面要将数据进行分页,不要用fetchall一次性 #所有查出,而是用limit加以限制,省的内存撑爆 # result=cursor.fetchall() print(result)#查到的数据是元组形式 cursor.close() conn.close()
fetchmany用的比较少spa
fetchone和fetchall用的比较多code
import pymysql conn=pymysql.connect(host='localhost',user='root',password='',database='db6') # cursor=conn.cursor()#不传任何参数,取回的是字典形式的数据 cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)#这样取回的是字典类型的数据 #注意这里的sql语句必定不要用占位符后面本身拼接,这样是为了防止sql注入 sql = "select * from student;"#%(user,pwd,)这样不能够 r=cursor.execute(sql) result=cursor.fetchmany(4) #用的最多的就是fetchone和fetchall,若是后面要将数据进行分页,不要用fetchall一次性 #所有查出,而是用limit加以限制,省的内存撑爆 # result=cursor.fetchall() print(result)#查到的数据是元组形式 cursor.close() conn.close()