zoukankan      html  css  js  c++  java
  • python-操作MySQL

    1、连接数据库基础代码

    使用 pymysql.connect(host, user, passwd, db, port, charset='utf8') 连接数据库

    使用 cursor() 方法获取操作游标

    使用 execute(sql) 方法执行SQL语句

    使用 fetchone() 方法获取一条数据

    import pymysql
    # 打开数据库连接
    db = pymysql.connect(host="192.168.120.78", user="test", passwd="Ddc@2019", db="user", port=3306, charset='utf8')
    # 使用cursor()方法获取操作游标
    cursor = db.cursor()
    # 使用execute()方法执行SQL语句
    cursor.execute("SELECT VERSION()")
    # 使用 fetchone() 方法获取一条数据
    data = cursor.fetchone()
    print("Database version : %s " % data)
    # 关闭数据库连接
    cursor.close()
    db.close()

     2、创建数据库表,使用 execute(sql) 方法执行sql语句

    import pymysql
    # 打开数据库连接
    db = pymysql.connect(host="192.168.120.78", user="test", passwd="Ddc@2019", db="user", port=3306, charset='utf8')
    # 使用cursor()方法获取操作游标
    cursor = db.cursor()
    # 如果数据表已经存在使用 execute() 方法删除表。
    cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
    # 创建数据表SQL语句
    sql = """CREATE TABLE EMPLOYEE (
             FIRST_NAME  CHAR(20) NOT NULL,
             LAST_NAME  CHAR(20),
             AGE INT,  
             SEX CHAR(1),
             INCOME FLOAT )"""
    # 使用execute方法执行SQL语句
    cursor.execute(sql)
    # 关闭数据库连接
    cursor.close()
    db.close()

    3、数据库插入、更新、删除(只是sql语句变化)操作,使用 commit() 方法提交数据库执行,使用 rollback() 方法回滚数据库执行

    import pymysql
    # 打开数据库连接
    db = pymysql.connect(host="192.168.120.78", user="test", passwd="Ddc@2019", db="user", port=3306, charset='utf8')
    # 使用cursor()方法获取操作游标
    cursor = db.cursor()
    # SQL 插入/删除/更新 语句
    sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
             LAST_NAME, AGE, SEX, INCOME)
             VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
    try:
        # 执行sql语句
        cursor.execute(sql)
        # 提交到数据库执行
        db.commit()
    except:
        # 回滚数据库执行
        db.rollback()
    # 关闭数据库连接
    cursor.close()
    db.close()

    4、数据库多行结果集查询,使用 fetchall() 方法接收全部的返回结果行

    import pymysql
    # 打开数据库连接
    db = pymysql.connect(host="192.168.120.78", user="test", passwd="Ddc@2019", db="user", port=3306, charset='utf8')
    # 使用cursor()方法获取操作游标
    cursor = db.cursor()
    # SQL 查询语句
    sql = 'SELECT * from user_connect where platform_type="11";'
    # 执行SQL语句
    cursor.execute(sql)
    # 获取所有记录列表
    results = cursor.fetchall()
    for row in results:
        id = row[0]
        type = row[1]
        platform_type = row[2]
        state = row[3]
        connect_key = row[4]
        connect_account = row[5]
        user_id = row[6]
        create_time = row[7]
        update_time = row[8]
        is_delete = row[9]
        source_id = row[10]
        # 打印结果
        print(id, type, platform_type, state, connect_key, connect_account, user_id, create_time, update_time, is_delete, source_id)
    # 关闭数据库连接
    cursor.close()
    db.close()

    5、数据库单行结果集查询,使用 fetchone() 方法获取一条数据,使用 rowcount 返回执行execute()方法后影响的行数

    import pymysql
    # 打开数据库连接
    db = pymysql.connect(host="192.168.120.78", user="test", passwd="Ddc@2019", db="user", port=3306, charset='utf8')
    # 使用cursor()方法获取操作游标
    cursor = db.cursor()
    # SQL 查询语句
    sql = 'SELECT * from user_connect where connect_key="13825822582";'
    # 执行SQL语句
    cursor.execute(sql)
    # 获取一条数据
    results = cursor.fetchone()
    # 获取影响行数
    count = cursor.rowcount
    # 打印结果
    print(count)
    print(results)
    # 关闭数据库连接
    cursor.close()
    db.close()

  • 相关阅读:
    hadoop面试
    常用脚本
    1.kafka
    2.flink
    java面试
    Hbase 项目
    linux 2>&1 和 &的意思
    Jetbrains系列产品重置试用方法
    解决GitHub网页githubusercontent地址无法访问问题
    stylus 成熟的写法
  • 原文地址:https://www.cnblogs.com/lilyo/p/11995528.html
Copyright © 2011-2022 走看看