Python高级学习第六课(寒假) 2022-1-11

  • 导入库
    import pymysql
  • 连接数据库,用try except捕获异常(数据库需要先在mysql中创建)
    try:
        db = pymysql.connect(host='localhost',
                             user='root', 
                             password='root', 
                             database='dbtest')
        print('数据库连接成功!')
    except pymysql.Error as e:
        print('数据库连接失败'+str(e))
  • 创建一张新表
    # 声明一个游标
    cur = db.cursor()
    
    # 创建表之前先检查是否存在,如果存在则删除
    cur.execute('DROP TABLE IF EXISTS Student')
    
    # 编辑sql语句
    sqlQuery = "CREATE TABLE Student(Id BIGINT(50) NOT NULL, Name CHAR(20), Grade int)"
    cur.execute(sqlQuery)
  • 向表中插入一条数据
    # 编辑sql语句插入值
    sqlQuery="INSERT INTO Student_table(Id, Name, Grade)VALUE(%s,%s,%s)"
    
    # 编辑准备插入的值
    value=(1,'Mike',15)
    
    # 执行sql语句并捕获异常
    try:
        cur.execute(sqlQuery,value)
        db.commit()
        print('数据插入成功!')
    except pymysql.Error as e:
        print("数据插入失败:"+e )
        db.rollback()
  • 查询表中的数据
    # 编辑sql语句查询叫做MIKE的人信息
    sqlQuery = "SELECT * FROM Student WHERE Name='MIKE'"
    
    # 使用fetchall()方法接收全部的返回结果行全部打印并捕获异常
    try:
        cur.execute(sqlQuery)
        results=cur.fetchall()
        for row in results:
            id = row[0]
            name = row[1]
            grade = row[2]
            print('Id:%s,Name:%s,Grade:%s'%(id,name,grade))
    except pymysql.Error as e:
        print("数据查询失败:"+str(e))
  • 更新表中的数据
    # 编辑sql语句
    sqlQuery = "UPDATE Student SET Name= %s WHERE Name=%s"
    
    # 编辑更新的信息
    value = ('John', 'updated name')
    
    # 提交修改并捕获异常
    try:
        cur.execute(sqlQuery, value)
        db.commit()
        print('数据更新成功!')
    except pymysql.Error as e:
        print("数据更新失败:"+str(e))
        # 发生错误时回滚
        db.rollback()
  • 删除表中的数据

    # 编辑sql语句
    sqlQuery = "DELETE FROM Student where Name=%s"
    
    # 编辑更新的信息
    value = ('John')
    
    # 提交修改并捕获异常
    try:
        cur.execute(sqlQuery, value)
        db.commit()
        print('Date Deleted Successfully')
    except pymysql.Error as e:
        print("数据删除失败:"+str(e))
        # 发生错误时回滚
        db.rollback()
  • 删除一张表

    # 编辑sql语句,如果有Student表就删除
    sqlQuery='DROP TABLE IF EXISTS Student'
    
    # 提交修改
    cur.execute(sqlQuery)
    print('表删除成功!')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值