Python操作数据库

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Python操作数据库


# 导入pymysql库
import pymysql
# 创建连接
db_connection = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123456',
    database='mysql',
    charset='utf8'
)
# 使用 cursor() 方法创建一个游标对象
cursors = db_connection.cursor()
# 使用 execute()  方法执行 SQL 查询
cursors.execute("SELECT VERSION()")
# 使用 fetchone() 方法获取单条数据.
data = cursors.fetchone()
# 打印数据
print ("Database version : %s " % data)
# 关闭数据库连接
db_connection.close()

640.png

    # 创建数据库
    import pymysql
    # 打开数据库连接 
    conn = pymysql.connect('localhost', 'root', '123456')
    # 使用cursor()方法创建一个游标对象cursor
    cursor = conn.cursor()  # 游标对象用于执行查询和获取结果
    # 创建数据库 连接数据库时 
    sql = 'create database ajie charset utf8;'
    # 执行SQL语句
    cursor.execute(sql)
    # 关闭数据库连接
    conn.close()

      # 创建数据表
      import pymysql
      # 打开数据库连接
      conn = pymysql.connect('localhost', 'root', '123456', 'ajie')
      # 使用cursor()方法创建一个游标对象cursor
      cursor = conn.cursor()
      # 使用预处理语句创建表
      sql = 'create table t1(name char(255), height int, age int,sex char(255))'
      # 执行SQL语句
      cursor.execute(sql)
      # 插入数据
      import pymysql
      # 打开数据库连接
      conn = pymysql.connect('localhost', 'root', '123456', 'ajie')
      # 使用cursor()方法获取操作游标
      cursor = conn.cursor()
      # SQL语句:向数据表中插入数据
      sql = 'insert into t1(name,height,age,sex) values ( "阿杰" ,175,20,"男"); '
      # 异常处理
      try:
          # 执行SQL语句
          cursor.execute(sql)
          # 提交事务到数据库执行
          conn.commit()
      except:
          # 如果发生错误则执行回滚操作
          conn.rollback()
      # 关闭数据库连接
      conn.close()
        # 查询数据库
        import pymysql
        # 打开数据库连接
        conn = pymysql.connect('localhost', 'root', '123456', )
        # 使用cursor()方法获取操作游标
        cursor = conn.cursor()
        # SQL语句:查询
        sql = "select * from ajie.t1; "
        # 异常处理
        try:
            # 执行SQL语句
            cursor.execute(sql)
            # 获取所有的记录列表
            results = cursor.fetchall()
            # 遍历列表
            for row in results:
                # 打印列表元素
                 print(row)
        except:
            print('Uable to fetch data!')
        # 关闭数据库连接
        conn.close()
          # 更新数据
          import pymysql
          # 打开数据库连接
          conn = pymysql.connect('localhost', 'root', '123456', 'ajie')
          # 使用cursor()方法获取操作游标
          cursor = conn.cursor()
          # SQL语句,执行更新操作
          sql = 'update t1 set age = age + 5 where sex = "男"'
          # 异常处理
          try:
              # 执行SQL语句
              cursor.execute(sql)
              # 提交到数据库执行
              conn.commit()
          except:
              # 发生错误时回滚
              conn.rollback()
          # 关闭数据库连接
          conn.close()


          # 删除数据
          import pymysql
          # 打开数据库连接
          conn = pymysql.connect('localhost', 'root', '123456', 'ajie')
          # 使用cursor()方法获取操作游标
          cursor = conn.cursor()
          # SQL语句,执行删除操作
          sql = 'delete from t1 where  age >20;'
          # 异常处理
          try:
              # 执行SQL语句
              cursor.execute(sql)
              # 提交到数据库执行
              conn.commit()
          except:
              # 发生错误时回滚
              conn.rollback()
          # 关闭数据库连接
          conn.close()




















          相关实践学习
          如何快速连接云数据库RDS MySQL
          本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
          全面了解阿里云能为你做什么
          阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
          相关文章
          |
          2月前
          |
          关系型数据库 MySQL 数据库连接
          python脚本:连接数据库,检查直播流是否可用
          【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
          136 68
          |
          27天前
          |
          关系型数据库 MySQL 数据库
          Python处理数据库:MySQL与SQLite详解 | python小知识
          本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
          184 15
          |
          3月前
          |
          关系型数据库 MySQL 数据处理
          探索Python中的异步编程:从asyncio到异步数据库操作
          在这个快节奏的技术世界里,效率和性能是关键。本文将带你深入Python的异步编程世界,从基础的asyncio库开始,逐步探索到异步数据库操作的高级应用。我们将一起揭开异步编程的神秘面纱,探索它如何帮助我们提升应用程序的性能和响应速度。
          |
          3月前
          |
          存储 缓存 Shell
          你知道 Python 其实自带了小型数据库吗
          你知道 Python 其实自带了小型数据库吗
          27 2
          你知道 Python 其实自带了小型数据库吗
          |
          3月前
          |
          Web App开发 SQL 数据库
          使用 Python 解析火狐浏览器的 SQLite3 数据库
          本文介绍如何使用 Python 解析火狐浏览器的 SQLite3 数据库,包括书签、历史记录和下载记录等。通过安装 Python 和 SQLite3,定位火狐数据库文件路径,编写 Python 脚本连接数据库并执行 SQL 查询,最终输出最近访问的网站历史记录。
          52 4
          |
          3月前
          |
          SQL 机器学习/深度学习 数据采集
          SQL与Python集成:数据库操作无缝衔接22.bijius.com
          自动化数据预处理:使用Python库(如Pandas)自动清洗、转换和准备数据,为机器学习模型提供高质量输入。 实时数据处理:集成Apache Kafka或Amazon Kinesis等流处理系统,实现实时数据更新和分析。
          |
          3月前
          |
          存储 关系型数据库 数据库
          轻量级数据库的利器:Python 及其内置 SQLite 简介
          轻量级数据库的利器:Python 及其内置 SQLite 简介
          78 3
          |
          3月前
          |
          数据库连接 Linux 数据库
          GBase 8s数据库连接 – Python
          GBase 8s数据库连接 – Python
          |
          3月前
          |
          SQL 机器学习/深度学习 数据库
          SQL与Python集成:数据库操作无缝衔接
          在开始之前,确保你已经安装了必要的Python库,如`sqlite3`(用于SQLite数据库)或`psycopg2`(用于PostgreSQL数据库)。这些库提供了Python与SQL数据库之间的接口。
          |
          3月前
          |
          SQL 关系型数据库 数据库
          使用 PostgreSQL 和 Python 实现数据库操作
          【10月更文挑战第2天】使用 PostgreSQL 和 Python 实现数据库操作