• python-操作mysql数据库


    一、安装pymysql库

    • 方法一:在cmd运行窗口中使用命令:pip3 install pymysql

    • 方法二:在pycharm中安装pymysql数据库
    • 设置-project interpreter-双击“pip”-搜索‘pymysql’-点击安装

     二、数据库的连接

    •  引入pymysql方法包:import pymysql
    import pymysql#引入pymysql方法包
    try:
        pymysql.connect('localhost','root','123','test')
        print('数据库连接成功')
    except pymysql.Error as e:#e为数据库连接失败的原因
        print('数据库连接失败'+str(e))

    三、用python中创建一张新表的数据表

    •  声明一个游标
    • 创建表之前先检查是否存在,如存在先进行删除
    • 编辑SQL语句
    • import pymysql#引入pymysql方法包
      try:
          db=pymysql.connect('localhost','root','123','test1')
          print('数据库连接成功')
          cur=db.cursor()#声明一个游标
          cur.execute('DROP TABLE IF EXISTS student')#如果数据表存在则进行删除int
          sql="CREATE TABLE Student(Id int,Name varchar(3),Sex int)"
          cur.execute(sql)
          print('表格创建成功')
      except pymysql.Error as e:#e为数据库连接失败的原因
          print('表格创建失败'+str(e)

    四、往表中插入一条数据

    • 编辑SQL语句
    • 使用commit提交数据
    • 当插入数据错误时使用rollback回滚数据
    • import pymysql#引入pymysql方法包
      
      try:
          db=pymysql.connect('localhost','root','123','test1')
          print('数据库连接成功')
          cur=db.cursor()#声明一个游标
          sql="INSERT INTO Student (Id,Name,Sex) value(%s,%s,%s)"
          value=(1,'张三',18)
          cur.execute(sql,value)
          db.commit()#提交数据
          print('数据插入成功')
      except pymysql.Error as e:#e为数据库连接失败的原因
          print('数据插入失败'+str(e))
          db.rollback()#数据插入失败时数据回滚
      
      db.close()#退出数据库

    五、查询表中数据

    • 编辑SQL语句
    • 使用fetchall(  )方法接受所有的查询结果
    import pymysql#引入pymysql方法包
    
    try:
        db=pymysql.connect('localhost','root','123','test1')
        print('数据库连接成功')
        cur=db.cursor()#声明一个游标
        sql="select * from Student"
        cur.execute(sql)
        results=cur.fetchall()
        for row in results:
            Id=row[0]
            Name=row[1]
            Sex=row[2]
            print('Id:%d,Name:%s,Sex:%d' %(Id,Name,Sex))
    except pymysql.Error as e:#e为数据库连接失败的原因
        print('数据查询失败'+str(e))
    
    db.close()#退出数据库

    五、 更新表中的数据

    • 编写SQL语句
    • 编辑更新的数据
    • 提交修改
    • import pymysql#引入pymysql方法包
      
      try:
          db=pymysql.connect('localhost','root','123','test1')
          print('数据库连接成功')
          cur=db.cursor()#声明一个游标
          sql="UPDATE Student set Id = %s where Id = %s "
          value=(2,1)
          cur.execute(sql,value)
          db.commit()
          print('数据更新成功')
      except pymysql.Error as e:#e为数据库连接失败的原因
          print('数据更新失败'+str(e))
          db.rollback()
      
      db.close()#退出数据库 

    六、删除表中的数据

    • 编辑SQL语句
    • 编辑更新信息
    • 提交修改
    • import pymysql#引入pymysql方法包
      
      try:
          db=pymysql.connect('localhost','root','123','test1')
          print('数据库连接成功')
          cur=db.cursor()#声明一个游标
          sql="delete from Student where Id=%s "
          value=2
          cur.execute(sql,value)
          db.commit()
          print('数据删除成功')
      except pymysql.Error as e:#e为数据库连接失败的原因
          print('数据删除失败'+str(e))
          db.rollback()
      
      db.close()#退出数据库

    七、删除一张表

    • 编辑SQL语句
    • 提交修改
    • import pymysql#引入pymysql方法包
      
      try:
          db=pymysql.connect('localhost','root','123','test1')
          print('数据库连接成功')
          cur=db.cursor()#声明一个游标
          sql="drop table if exists Student "#如果Student表存在则删除
          cur.execute(sql)
          print('数据表删除成功')
      except pymysql.Error as e:#e为数据库连接失败的原因
          print('数据表删除失败'+str(e))
          db.rollback()
      
      db.close()#退出数据库
  • 相关阅读:
    erwin逆向工程,logical模型列名修改为中文
    [Leetcode] Two pointer-- 76. Minimum Window Substring
    [Leetcode] Binary search tree -- 173. Binary Search Tree Iterator
    [Leetcode] 684. Redundant Connection
    [Leetcode] Binary tree--653. Two Sum IV
    [Leetcode] Binary tree -- 617. Merge Two Binary Trees
    [Leetcode] Binary tree-- 563. Binary Tree Tilt
    [Leetcode] Binary tree-- 572. Subtree of Another Tree
    [Leetcode] Binary tree-- 437. Path Sum III
    [Leetcode] Binary tree-- 113. Path Sum II
  • 原文地址:https://www.cnblogs.com/jingdenghuakai/p/11760927.html
Copyright © 2020-2023  润新知