python中mysql数据交互

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()

猜你喜欢

转载自blog.csdn.net/xiao_xia_ming/article/details/82668816