def main():
conn = pymysql.connect(host="localhost", user="root", password="mysql", database="jingdong", charset="utf8")
# # 假如cursor=pymysql.cursors.DictCurosr,则 返回的Cursor是字典Cursor,返回的结果集是以字典的形式呈现的
# cs1 = conn.cursor(cursor=pymysql.cursors.DictCursor) # conn.cursor(cursor=pymysql.cursors.DictCursor)
cls = conn.cursor()
sql = "select name,price from goods"
affect_all = cls.execute(sql)
print("受影响的行数有:%s %s" % (affect_all, cls.rowcount))
for i in range(cls.rowcount): # 这句话没什么用,差不多就是执行21次,无输出,目的是为了让下面面能够全部取出来
result = cls.fetchone() # 这里为取部分,采用单词fetchone,
print("产品名称为:%s 产品价格为%0.2f" % (result[0], result[1])) # result0与1分别对应的是变量sql里面的name和price值
# 采用上面这种方法会有很大的不确定性 ,若name和price调换位置,其结果也会改变,不实用
# result = cls.fetchall() # 这里为取全部,采用单词fetchall,直接打印item取出数据为元组,为了取小数内容更直观,分开取
# for item in result:
# # print("产品名称为:%s 产品价格为%0.2f" % (item[0], item[1]))
# print(item)
cls.close()
conn.close()
if __name__ == '__main__':
main()