zoukankan      html  css  js  c++  java
  • python 连接mysql数据库操作

    import pymysql.cursors
    
    # 连接数据库
    connect = pymysql.Connect(
        host='localhost',
        port=3306,
        user='root',
        passwd='magicimage',
        db='student',
        charset='utf8'
    )
    # 获取游标
    cursor = connect.cursor()
    '''
    删除表,创建表
    '''
    # 使用 execute() 方法执行 SQL,如果表存在则删除
    cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
    
    # 使用预处理语句创建表
    sql = """CREATE TABLE EMPLOYEE (
             FIRST_NAME  CHAR(20) NOT NULL,
             LAST_NAME  CHAR(20),
             AGE INT,
             SEX CHAR(1),
             INCOME FLOAT )"""
    
    cursor.execute(sql)
    
    
    '''插入数据'''
    sql = "INSERT INTO student (name, sex, class_id) VALUES ( '%s', '%s', '%s' )"
    data = ('雷军', 0, 1)
    try:
        # 执行sql语句
        cursor.execute(sql % data)
        connect.commit()
        print('成功插入', cursor.rowcount, '条数据')
    except:
        connect.rollback()
    '''
    显示结果
    成功插入 1 条数据
    '''
    
    
    '''
    数据库查询操作
     fetchone() 方法获取单条数据, 
     fetchall() 方法获取多条数据。
     rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。
    '''
    # SQL 查询语句
    sql = "SELECT * FROM student 
           WHERE class_id > %s" % (1)
    
    try:
       # 执行SQL语句
       cursor.execute(sql)
       # 获取所有记录列表
       results = cursor.fetchall()
       for row in results:
          id = row[0]
          name = row[1]
          sex = row[2]
          class_id = row[3]
           # 打印结果
          print ("id=%s,name=%s,sex=%s,class_id=%s" % 
                 (id, name, sex,class_id ))
    except:
       print ("Error: unable to fetch data")
    
    '''
    结果
    id=2,name=雪,sex=1,class_id=2
    id=3,name=于,sex=0,class_id=3
    id=5,name=孙,sex=0,class_id=2
    '''
    
    '''
    数据库更新操作
    '''
    # SQL 更新语句
    sql = "UPDATE student SET name = '雷' WHERE id = '%s'" % (7)
    try:
        # 执行SQL语句
        cursor.execute(sql)
        # 提交到数据库执行
        connect.commit()
        print('成功更新', cursor.rowcount, '条数据')
    except:
        # 发生错误时回滚
        connect.rollback()
    
    '''
    删除操作
    '''
    # SQL 删除语句
    sql = "DELETE FROM student WHERE id = '%s'" % (7)
    try:
       # 执行SQL语句
       cursor.execute(sql)
       # 提交修改
       connect.commit()
       print('成功删除', cursor.rowcount, '条数据')
    except:
       # 发生错误时回滚
       connect.rollback()
    
    # 关闭数据库连接
    connect.close()
  • 相关阅读:
    在vue项目中引用element-ui时 让el-input 获取焦点的方法
    vue cli 平稳升级webapck4
    如何在 vuex action 中获取到 vue 实例
    Vue主要原理最简实现与逻辑梳理
    vue自定义指令clickoutside扩展--多个元素的并集作为inside
    关于使用element中的popup问题
    教你如何检查一个函数是否为JavaScript运行时环境内建函数
    用 Vue 做一个简单的购物app
    vue 手机键盘把底部按钮顶上去
    基于Linux的智能家居的设计(2)
  • 原文地址:https://www.cnblogs.com/wangxue1314/p/13521881.html
Copyright © 2011-2022 走看看