import pymysql # 创建连接 conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='', db='ytt') # 创建游标 cursor = conn.cursor() # 执行sql,并返回受影响行数 # 执行各种对数据的操作,全在这里操作 # effect_row = cursor.execute('update tb1 set num =20') # print(effect_row) # 字符串拼接sql,可以执行,明令禁止,会出现sql注入,被攻击 # inp = input('请输入num:') # sql = 'insert into tb2(num) values("%s")' # sql = sql %(inp,) #字符串格式化 # r = cursor.execute(sql) # print(r) # 等价于 r = cursor.execute('insert into tb2(num) values(%s)',inp) # 参数传递,必须使用参数形式 # 多个数据传参,传递数组 # r = cursor.execute('insert into student(gender,class_id,name) values(%s,%s,%s)', ('女', 1, '鸭蛋')) #提交多个数据 L =[ ('女', 1, '鸭蛋2'), ('女', 1, '鸭蛋1'), ('女', 1, '鸭蛋3'), ] #r = cursor.executemany('insert into student(gender,class_id,name) values(%s,%s,%s)', ('女', '1', '鸭蛋')) # 查询不用commit r = cursor.execute('select * from tb2') print(r) # 取出查询到的数据 #result = cursor.fetchall() #取出所有数据,数据已经到内存了,从内存里拿 #result = cursor.fetchone() # 取一条 result = cursor.fetchmany(3)# 取你想取的数据个数 print(result) # 提交,不然无法保存新建或者保存的数据,用commit conn.commit() # 关闭游标 cursor.close()