python访问mysql

要在 Python 中访问 MySQL 数据库,通常会使用 mysql-connector-pythonpymysql 这两个库之一。以下是使用这两个库的基本示例:

使用 mysql-connector-python

  1. 安装库:

    bash 复制代码
    pip install mysql-connector-python
  2. 示例代码:

    python 复制代码
    import mysql.connector
    
    # 连接到 MySQL 数据库
    connection = mysql.connector.connect(
        host='localhost',       # 数据库主机
        user='your_username',   # 数据库用户名
        password='your_password', # 数据库密码
        database='your_database'  # 要连接的数据库名
    )
    
    # 创建一个游标对象
    cursor = connection.cursor()
    
    # 执行查询
    cursor.execute("SELECT * FROM your_table")
    
    # 获取查询结果
    results = cursor.fetchall()
    
    # 处理结果
    for row in results:
        print(row)
    
    # 关闭游标和连接
    cursor.close()
    connection.close()

使用 pymysql

  1. 安装库:

    bash 复制代码
    pip install pymysql
  2. 示例代码:

    python 复制代码
    import pymysql
    
    # 连接到 MySQL 数据库
    connection = pymysql.connect(
        host='localhost',       # 数据库主机
        user='your_username',   # 数据库用户名
        password='your_password', # 数据库密码
        database='your_database'  # 要连接的数据库名
    )
    
    # 创建一个游标对象
    cursor = connection.cursor()
    
    # 执行查询
    cursor.execute("SELECT * FROM your_table")
    
    # 获取查询结果
    results = cursor.fetchall()
    
    # 处理结果
    for row in results:
        print(row)
    
    # 关闭游标和连接
    cursor.close()
    connection.close()

注意事项

  • 安全性: 在生产环境中,不要将数据库凭据硬编码在代码中,考虑使用环境变量或配置文件来存储敏感信息。
  • 错误处理 : 代码中应加入适当的异常处理逻辑,例如 tryexcept 语句,以处理可能发生的错误。
相关推荐
pt10434 分钟前
网络自动化Python课程:Netconf与Restconf及Cisco自动化配置实验
网络·python·自动化
slacker-kian18 分钟前
[笔记]-什么是相似性搜索?
python·ai·向量·相似性搜索·点积·l2 距离·余弦相似度和距离
阿童木写作23 分钟前
跨境电商图片翻译工具,批量翻译视频字幕还免费
python·音视频
sukioe24 分钟前
城智连响:基于 LangGraph 与四库分层架构的城市公共设施智能报修与派单系统
人工智能·python·ai·架构·langchain
我的xiaodoujiao26 分钟前
Django 基础知识详细图文教程 4-Django 视图定义与使用
开发语言·数据库·后端·测试工具·django·sqlite
l1t27 分钟前
DeepSeek总结的DuckDB在 CI 中为 release 和 glibc CLI 构建启用 LTO - #24225
开发语言·数据库·ci/cd·duckdb
whitelbwwww28 分钟前
c++运行RKNN
开发语言·c++
2401_8346369932 分钟前
从零开始学 MySQL:SQL 编程、多表查询、用户管理一站式教程
mysql
2601_9620702335 分钟前
差异基因富集分析(R语言——GO&KEGG&GSEA)
开发语言·golang·r语言
布莱克60537 分钟前
栈(Stack)详解:定义、作用、应用场景及与队列的区别(附 C/C++ 代码)
c语言·开发语言·c++·