【第十一章】Python 调用 MySQL 全面指南:从基础到实践​

Python连接MySQL终极指南:从基础到高级ORM应用 🔥 “还在用传统方式连接MySQL?本文揭秘PyMySQL最新性能优化技巧,轻松提升300%查询效率!💎 “文末赠送『MySQL避坑手册』,解决90%开发者都会遇到的连接池难题! 阅读详情

Python 调用 MySQL 全面指南:从基础到实践​

在当今数据驱动的时代,Python 凭借其简洁的语法、丰富的生态库,成为数据处理、Web 开发、自动化脚本编写的首选语言之一;而 MySQL 作为开源关系型数据库的代表,以其高效、稳定、易扩展的特性,广泛应用于各类系统的数据存储场景。两者的结合,是实现 “数据读取 - 处理 - 存储” 闭环的核心环节 —— 无论是电商系统的订单数据管理、数据分析平台的批量数据入库,还是自动化脚本的日志存储,都离不开 Python 对 MySQL 的调用。​



前言

对于初学者而言,从环境搭建到异常处理,从单条数据操作到高并发场景下的连接池优化,往往存在诸多疑问。本文旨在通过 “理论 + 实例 + 执行结果” 的形式,覆盖 Python 操作 MySQL 的全流程知识点,既解决 “怎么用” 的问题,也解释 “为什么这么用”,帮助读者不仅能完成基础交互,更能规避常见坑点,写出高效、安全的数据库操作代码。​

在数据处理与开发中,Python 常需与 MySQL 数据库交互以实现数据存储、查询等功能。本文将覆盖环境搭建、连接配置、SQL 执行、结果处理、事务管理及异常处理等核心知识点,通过代码示例与执行结果,助你快速掌握 Python 操作 MySQL 的完整流程。


一、环境准备:安装必备库

Python 操作 MySQL 需依赖第三方库,常用库有mysql-connector-python(Oracle 官方)和pymysql(Python 社区维护),两者用法类似,本文以mysql-connector-python为例。

1.1 安装库​

通过pip命令安装,执行以下命令:

1、pip install mysql-connector-python
2、若使用pymysql,执行:pip install pymysql

1.2 验证安装​

进入 Python 交互环境,执行导入命令,无报错则安装成功:

import mysql.connector
print("安装成功")  # 执行结果:安装成功

二、核心操作:Python 与 MySQL 交互全流程​

2.1 连接 MySQL 数据库​

连接数据库需指定主机地址、用户名、密码、数据库名等参数,通过connect()方法创建连接对象,后续操作均基于该对象。​

示例代码:

import mysql.connector
from mysql.connector import Error

try:
    # 1. 创建数据库连接
    connection = mysql.connector.connect(
        host='localhost',        # 主机地址(本地为localhost)
        database='test_db',      # 要连接的数据库名(需提前创建)
        user='root',             # MySQL用户名
        password='Admin@123'        # MySQL密码
    )

    # 2. 验证连接
    if connection.is_connected():
        db_info = connection.server_info
        print(f"连接成功!MySQL服务器版本:{db_info}")  # 执行结果:连接成功!MySQL服务器版本:8.0.32
        # 获取当前数据库游标(用于执行SQL)
        cursor = connection.cursor()
        # 查询当前使用的数据库
        cursor.execute("select database();")
        current_db = cursor.fetchone()
        print(f"当前连接的数据库:{current_db[0]}")  # 执行结果:当前连接的数据库:test_db

except Error as e:
    print(f"连接失败!错误信息:{e}")  # 若参数错误,执行结果例:连接失败!错误信息:1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

finally:
    # 3. 关闭连接(避免资源泄漏)
    if connection.is_connected():
        cursor.close()
        connection.close()
        print("数据库连接已关闭")  # 执行结果:数据库连接已关闭

2.2 执行 SQL 操作(增删改查)​

通过游标对象cursor的execute()方法执行 SQL 语句,不同操作的结果处理方式不同:查询(SELECT)需获取结果,增删改(INSERT/DELETE/UPDATE)需提交事务。​

2.2.1 创建数据表(CREATE TABLE)

# 承接上文的connection和cursor对象
create_table_sql = """
CREATE TABLE IF NOT EXISTS student (
    id INT AUTO_INCREMENT PRIMARY KEY,  # 自增主键
    name VARCHAR(50) NOT NULL,          # 姓名(非空)
    age INT,                            # 年龄
    score FLOAT                         # 分数
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
"""
cursor.execute(create_table_sql)
print("数据表student创建成功")  # 执行结果:数据表student创建成功

2.2.2 插入数据(INSERT)​

插入单条或多条数据,需通过connection.commit()提交事务,否则数据不会写入数据库。​

示例 1:插入单条数据

insert_sql = "INSERT INTO student (name, age, score) VALUES (%s, %s, %s);"
data = ("张三", 18, 95.5)  # 与SQL中的%s对应(注意:不是%s字符串拼接,避免SQL注入)
cursor.execute(insert_sql, data)
connection.commit()  # 提交事务
print(f"插入成功,新增数据ID:{cursor.lastrowid}")  # 执行结果:插入成功,新增数据ID:1

示例 2:插入多条数据​

insert_many_sql = "INSERT INTO student (name, age, score) VALUES (%s, %s, %s);"
data_list = [
    ("李四", 19, 88.0),
    ("王五", 17, 92.5),
    ("赵六", 18, 79.0)
]
cursor.executemany(insert_many_sql, data_list)  # executemany批量执行
connection.commit()
print(f"批量插入成功,共插入{cursor.rowcount}条数据")  # 执行结果:批量插入成功,共插入3条数据

2.2.3 查询数据(SELECT)​

查询结果通过cursor.fetchone()(获取一条)、cursor.fetchall()(获取所有)、cursor.fetchmany(n)(获取 n 条)获取,结果以元组或元组列表形式返回。​

示例:查询所有学生数据

select_sql = "SELECT id, name, age, score FROM student WHERE age < 20;"
cursor.execute(select_sql)
# 获取所有查询结果
results = cursor.fetchall()
print(f"查询到{cursor.rowcount}条数据:")  # 执行结果:查询到4条数据:
# 遍历结果
for row in results:
    student_id = row[0]
    name = row[1]
    age = row[2]
    score = row[3]
    print(f"ID:{student_id},姓名:{name},年龄:{age},分数:{score}")
# 执行结果:
# ID:1,姓名:张三,年龄:18,分数:95.5
# ID:2,姓名:李四,年龄:19,分数:88.0
# ID:3,姓名:王五,年龄:17,分数:92.5
# ID:4,姓名:赵六,年龄:18,分数:79.0

2.2.4 更新数据(UPDATE)​

update_sql = "UPDATE student SET score = %s WHERE name = %s;"
update_data = (90.0, "赵六")  # 将赵六的分数改为90.0
cursor.execute(update_sql, update_data)
connection.commit()
print(f"更新成功,影响{cursor.rowcount}条数据")  # 执行结果:更新成功,影响1条数据

2.2.5 删除数据(DELETE)​

delete_sql = "DELETE FROM student WHERE age = %s;"
delete_data = (17,)  # 注意:单参数需加逗号,避免被识别为普通元组
cursor.execute(delete_sql, delete_data)
connection.commit()
print(f"删除成功,影响{cursor.rowcount}条数据")  # 执行结果:删除成功,影响1条数据

2.3 事务管理​

MySQL 默认开启事务(InnoDB 引擎),需通过commit()提交事务,或通过rollback()回滚事务(出现错误时),确保数据一致性。​

示例:事务回滚

try:
    # 执行两个操作,作为一个事务
    cursor.execute("INSERT INTO student (name, age, score) VALUES ('孙七', 20, 85.0);")
    # 模拟错误(如分数超过100,实际业务中可能是逻辑错误)
    cursor.execute("INSERT INTO student (name, age, score) VALUES ('周八', 21, 105.0);")
    connection.commit()
    print("事务提交成功")
except Error as e:
    # 出现错误,回滚事务(两条插入均不生效)
    connection.rollback()
    print(f"事务回滚!错误信息:{e}")  # 执行结果:事务回滚!错误信息:...(若无约束,仅提示执行成功,可自定义业务逻辑触发回滚)

2.4 异常处理最佳实践​

实际开发中,需捕获常见异常(如连接失败、SQL 语法错误、数据约束错误),并给出清晰提示,避免程序崩溃。​

示例:完整异常处理模板

import mysql.connector
from mysql.connector import Error

def operate_mysql():
    connection = None
    cursor = None
    try:
        # 1. 连接数据库
        connection = mysql.connector.connect(
            host='localhost',
            database='test_db',
            user='root',
            password='123456'
        )
        if connection.is_connected():
            cursor = connection.cursor()
            # 2. 执行SQL(示例:查询)
            cursor.execute("SELECT name, score FROM student;")
            results = cursor.fetchall()
            print("学生列表:", results)

    except Error as e:
        # 分类处理异常
        if "Access denied" in str(e):
            print("错误:用户名或密码错误")
        elif "Unknown database" in str(e):
            print("错误:数据库不存在")
        elif "You have an error in your SQL syntax" in str(e):
            print(f"错误:SQL语法错误:{e}")
        else:
            print(f"未知错误:{e}")

    finally:
        # 3. 关闭资源(无论是否报错,均需关闭)
        if cursor:
            cursor.close()
        if connection and connection.is_connected():
            connection.close()
            print("连接已关闭")

# 调用函数
operate_mysql()
# 执行结果(若正常):
# 学生列表: [('张三', 95.5), ('李四', 88.0), ('赵六', 90.0), ('孙七', 85.0)]
# 连接已关闭

三、进阶技巧:配置文件与连接池​

3.1 从配置文件读取连接参数​

将数据库参数(如密码)写入配置文件(如config.ini),避免硬编码,提高安全性。​

步骤 1:创建 config.ini

[mysql]
host = localhost
database = test_db
user = root
password = Admin@123
port = 3306

步骤 2:读取配置并连接​

import configparser  # 用于读取ini文件

# 读取配置
config = configparser.ConfigParser()
config.read('config.ini')
mysql_config = config['mysql']

# 连接数据库
connection = mysql.connector.connect(
    host=mysql_config['host'],
    database=mysql_config['database'],
    user=mysql_config['user'],
    password=mysql_config['password'],
    port=int(mysql_config['port'])
)
print("从配置文件连接成功")  # 执行结果:从配置文件连接成功

3.2 使用连接池(提高性能)​

频繁创建 / 关闭连接会消耗资源,通过连接池管理连接,可复用连接,提升高并发场景下的性能。​

示例:创建连接池

from mysql.connector import pooling

# 创建连接池
connection_pool = pooling.MySQLConnectionPool(
    pool_name="my_pool",          # 连接池名称
    pool_size=5,                  # 最大连接数(根据需求调整)
    pool_reset_session=True,      # 重置会话(避免前一个连接的影响)
    host='localhost',
    database='test_db',
    user='root',
    password='123456'
)

# 从连接池获取连接
connection1 = connection_pool.get_connection()
connection2 = connection_pool.get_connection()
print(f"连接池当前可用连接数:{connection_pool.pool_size - connection_pool.used_connections}")  # 执行结果:连接池当前可用连接数:3

# 关闭连接(实际是归还到连接池,而非销毁)
connection1.close()
print(f"归还连接后,可用连接数:{connection_pool.pool_size - connection_pool.used_connections}")  # 执行结果:归还连接后,可用连接数:4

四、常见问题与解决方案​

问题现象可能原因解决方案
连接失败:Access denied用户名 / 密码错误检查user和password参数,确保与 MySQL 配置一致
连接失败:Unknown database数据库不存在先通过 MySQL 客户端创建数据库(CREATE DATABASE test_db;)
执行 SQL 报错:You have an error in your SQL syntaxSQL 语句语法错误检查 SQL 关键字、括号、分号,确保与 MySQL 语法一致
插入数据后查询不到未执行connection.commit()增删改操作后必须调用commit()提交事务
批量插入效率低未使用executemany()优先使用executemany()批量执行,而非循环execute()

总结​

本文围绕 Python 调用 MySQL 的核心流程展开,从环境搭建的库安装,到基础的连接配置、增删改查操作,再到进阶的事务管理、异常处理、配置文件与连接池优化,覆盖了从 “入门” 到 “实践” 的关键知识点。核心要点可归纳为以下三点:​

  • 安全与规范是基础:始终使用%s占位符传递参数(避免 SQL 注入),增删改后必须提交事务,结束操作后关闭游标与连接,这些规范是保障数据安全与程序稳定的前提。​
  • 异常处理不可少:数据库操作中,连接失败、语法错误、数据约束冲突等问题时有发生,通过分类捕获异常并给出明确提示,能大幅降低调试成本,避免程序崩溃。​
  • 进阶优化看场景:简单脚本可直接使用基础连接,而生产环境需考虑安全性(配置文件存储参数)与性能(连接池复用连接),根据实际场景选择合适的方案,才能写出高效、可维护的代码。​

掌握这些知识点后,读者可根据实际需求灵活调整代码 —— 例如结合pandas库实现数据批量读写,或在 Web 框架(如 Django、Flask)中集成 MySQL 操作。后续若需深入,还可探索 ORM 框架(如 SQLAlchemy),进一步简化数据库交互逻辑。

Python操作MySQL终极指南:从基础到架构演进的12个核心技能 在数据驱动的时代,Python与MySQL的组合已成为Web开发、数据分析领域的黄金搭档。本文将带您系统掌握Python操作MySQL的全链路技能,从开发环境搭建到架构演进,从安全防护到智能运维,助力您构建高效稳定的数据库应用。 阅读详情

相关推荐

Python与MySQL:从基础操作到实战技巧的完整指南

从基础连接操作到复杂事务处理,Python与MySQL的协作展现了强大的灵活性。某金融科技公司的实时风控系统,通过Python每秒处理2000笔交易,MySQL的行级锁机制确保了数据一致性。AI驱动优化:利用机器学习自动优化查询计划Serverless架构:AWS Aurora Serverless等新型数据库服务量子计算集成:探索量子加密在数据库安全的应用掌握这些核心技能后,开发者可以轻松构建从个人博客到企业级应用的各类系统。

这家伙很懒,什么都没有留下 1170

使用Python操作数据库

安装数据库:yum install mariadb-server mariadb -y。其中mariadb-server表示服务端,mariadb表示客户端,默认连接本机的3306端口。检查数据库是否安装好了:rpm -qa|grep mariadb。其中rpm -qa命令是将所有已经安装的软件包列出来,grep命令是将mariadb相关的包过滤出来。启动mariadb服务:systemctl start mariadb。检查mariadb服务是否启动:ps -ef|grep mariadb。

m0_69298614的博客 3908

Python操作数据库全面指南:从基础到高级实践

本文全面介绍Python操作数据库的方法,涵盖SQLite、MySQL等关系型数据库和MongoDB等NoSQL数据库。主要内容包括:1)使用SQLite进行CRUD操作,展示创建连接、建表和增删改查的完整代码示例;2)MySQL数据库操作,通过PyMySQL实现数据库连接封装类;3)ORM框架SQLAlchemy的基本用法;4)NoSQL数据库MongoDB的操作方法。文章提供大量实用代码片段,帮助开发者快速掌握Python与各类数据库的交互技术,适用于从基础到高级的不同应用场景。

胡茬大叔的博客 1234

五、使用Python操作数据库

使用Python操作内置数据库SQLite以及MySQL数据库。

ungoing的博客 2万+

python基础和MySQL基础

目录1. 答疑1.1. python的安装1.2. python如何安装包2. python中数据的读写2.1 几种常用的数据类型2.2 数据的读写3. MySQL3.1 介绍MySQL3.2 MySQL安装3.3 MySQL基础操作3.3.1 出现连接不上数据库怎么办?3.3.2 基础操作 1. 答疑 1.1. python的安装 安装教程:全网最详细的Python安装教程 1.2. python如何安装包 python安装包有三种方法:1. 在cmd中用pip install安装;2. 在pycharm

cc_mlearning的博客 741

MySQL-python数据库交互实践指南

MySQL-python是一个流行的MySQL数据库访问模块,允许Python脚本执行SQL语句和管理数据库连接。它使用Python DB-API 2.0规范,为数据库操作提供了标准化接口。Python DB-API标准是Python程序员与数据库交互时的规范和协议。本章节主要讲述DB-API规范的核心内容,包括数据库连接和游标、参数化查询以及事务处理等。DB-API(数据库应用程序接口)定义了如何在Python中访问数据库。

weixin_36328210的博客 554

5步教你用Python连接数据库!

一,打开数据库(Mysql)服务二,用Sqlyog(回复yog获取sqlyog工具使用方法)连接自己要测试的数据库,创建测试用数据库和表三,打开PyCharm,(python开发2.*版本可以直接使用MySQL,python3.*版本需要下载使用PyMySQL包才能连接数据库),按照下图方法安装PyMySql包1.ctrl+alt+s 调出设置面板,选择project下的python interpreter选项,选择对应python版本,如果没有图中黄框内的包,就点击右边的“+”号。

AI大模型资料分享员 1797

Python3中操作MySQL的PyMySQL实践指南

欢迎来到本系列的IT博客文章,我们将一起探索如何利用Python来高效地处理数据库操作。在本章节中,我们将初步介绍PyMySQL,一个在Python中实现与MySQL数据库交互的库。我们将从PyMySQL的定义开始,探讨其特点,并对比传统数据库连接方式。PyMySQL是Python中的一个库,它提供了一个纯Python实现的MySQL客户端协议,允许开发者通过Python脚本直接操作MySQL数据库。其主要目的是为了在Python代码中嵌入SQL语句,方便地进行数据的插入、查询、更新和删除操作。

weixin_30600615的博客 897

python如何调用数据库相关问题

Python中可以使用多种库来调用数据库,其中比较常用的是sqlite3psycopg2等。以下是一个使用sqlite3简单看一下,记住大致的步骤即可。区别与联系:MySQL和Oracle都支持多种操作系统,包括Linux、Windows等典型的非关系型数据库--redis,

coder_Alger 的博客 1551

Dify整合FireCrawl与百度搜索实战:手把手教你打造全能研究助手

本文手把手教你基于Dify平台,整合FireCrawl网页爬虫与百度搜索能力,构建一个能同时处理本地文档与实时网络信息的全能研究助手。通过部署核心环境、配置模型、接入两大工具并设计自动化工作流,实现从问题提出到深度分析报告生成的一站式解决方案,极大提升信息调研与整合效率。

weixin_29062963的博客 500

BERT之提取特征向量 及 bert-as-server的使用

本文内容列表提取句向量1、句向量简介1-1传统句向量1-2、BERT句向量2、 extract_features.py源码分析2-1 main函数 前一篇文章 BERT介绍及中文文本相似度任务实践 简单介绍了使用BERT进行中文文本相似度计算的方法,这篇文章着重对特征提取方法进行讲述。 提取句向量 1、句向量简介 1-1传统句向量 更多采用word embedding的方式取加权平均,该方法的一大...

ling620的专栏 1万+

Python操作数据库

二.python操作sqlserver。一.python操作mysql。编写sqlserver工具类。编写mysql工具类。

weixin_44474268的博客 228

【SWAT水文模型】SWAT-CUP参数率定与模型验证实战指南

本文提供了SWAT水文模型参数率定与模型验证的完整实战指南。详细介绍了如何使用SWAT-CUP工具,特别是SUFI-2算法,进行自动化参数校准,并阐述了模型验证的关键步骤以避免过度拟合。内容涵盖从工程搭建、核心参数选择、迭代优化到结果分析与常见问题排查的全流程,旨在帮助用户提升SWAT模型模拟的准确性与可靠性。

weixin_29072299的博客 499

Python与MySQL高效集成指南:从基础到高级实践

Python与MySQL高效集成指南:从基础到高级实践

猿榜编程的博客 1664

Protege新手入门:5分钟搞定本体建模基础(附实战案例)

本文为Protege本体建模新手提供了一份快速入门指南。通过构建一个关于“披萨”的实战案例,详细讲解了从环境准备、定义核心类(Classes)、建立对象属性(Object Properties)到设置数据属性(Data Properties)和创建个体的完整流程。文章旨在帮助读者绕过复杂理论,在5分钟内直观掌握本体建模的基础操作,快速建立知识图谱构建的信心。

weixin_28335283的博客 284

python实现边缘检测Canny算子 (附完整源码)

python实现边缘检测Canny算子 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 457

Python调用Ollama API实践指南:从基础到高级应用

大模型API调用是当前AI工程实践中的关键技术,通过Python接口可以实现对开源模型的高效管理。Ollama作为轻量级模型管理工具,其核心原理是通过REST API封装模型推理过程,支持流式响应和对话记忆保持等高级功能。在技术价值层面,这种方案显著降低了模型部署门槛,特别适合需要快速集成AI能力的开发者。典型应用场景包括代码生成、文档摘要和知识问答等。本文以Llama2模型为例,详细讲解Python调用Ollama API的全流程实践,涵盖Docker部署、错误处理和性能优化等工程细节,并演示如何结合Fl

weixin_33858336的博客 507

基于Simulink的电动汽车动力总成控制策略验证与标定仿真平台

电动汽车的动力总成(Powertrain)是车辆的核心系统,包括动力电池、电机控制器、逆变器和驱动电机等关键部件。动力总成的控制策略直接影响车辆的动力性能、能耗效率和驾驶体验。为了验证和优化这些控制策略,基于MATLAB/Simulink的仿真平台成为一种高效且经济的解决方案。本项目旨在构建一个完整的基于Simulink的电动汽车动力总成控制策略验证与标定仿真平台,涵盖控制策略建模、性能评估以及参数标定等功能模块,并通过仿真验证系统的有效性。

xiaoheshang_123的博客 177

python基础:Python MySQL

Python MySQL

weixin_51047454的博客 2万+

27、物联网中的量子密钥分发:安全通信新范式

本文探讨了物联网(IoT)快速发展所带来的安全挑战,并提出量子密钥分发(QKD)作为应对新兴威胁的新范式。文章详细介绍了QKD的基础原理、BB84协议的实现流程以及其在物联网中的应用前景,同时强调了安全专业人员提升技能、制定标准化指南以及跨学科合作的重要性。通过利用量子力学特性,QKD能够提供更高的通信安全性,抵御量子计算等未来威胁,为物联网的安全发展提供保障。

tequila的博客 157

人工智能混合编程实践:C++调用封装好的DLL进行异常检测推理

C++、Python、ONNX、人工智能、异常检测、Anomalib 2.1.0

FriendshipTang的博客 170

lesson40:PyMySQL完全指南:从基础到高级的Python MySQL交互

本文全面介绍了Python操作MySQL数据库的首选驱动PyMySQL。内容涵盖环境配置、核心功能、安全实践、高级应用架构及实战案例,重点讲解了SQL注入防护、连接池优化、ORM集成等关键知识点。通过用户认证系统、数据ETL管道等三个实战项目,展示了PyMySQL在企业级应用中的完整解决方案。文章还提供了性能调优指南和异常处理体系,帮助开发者构建高效安全的数据库应用。最后推荐了官方文档和进阶书籍等学习资源,适合从入门到精通的各阶段开发者参考。

2402_82363599的博客 1753

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Python调用MySQL存储过程

使用Python处理MySQL逻辑时如果把SQL语句直接写在字符串中调用多次运行需要多次编译而且代码维护难度增加,MySQL存储过程将SQL逻辑封装解决这个问题,下面记录一下测试效果。 创建测试存储过程 delimiter $$ DROP PROCEDURE IF EXISTS `add_person`$$ CREATE PROCEDURE `add_person`(IN p_id in...

bigdataprimary的博客 3201

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Python操作MySQL:从基础到高级实践指南

关系型数据库是数据存储与管理的核心技术,MySQL作为最流行的开源数据库,通过Python驱动实现高效交互。数据库连接原理基于TCP协议和标准API接口,Python通过mysql-connector等驱动库封装底层通信细节。这种技术组合在Web开发、数据分析等领域具有重要价值,特别是在需要处理结构化数据的应用场景中。本文以CRUD操作为核心,详解Python操作MySQL的连接配置、事务管理、性能优化等实战技巧,并分享连接池配置和大数据量处理等高频问题的解决方案。通过参数化查询和权限控制等安全实践,可有效

weixin_32487557的博客 269

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

python如何调用内部mysql_Python如何对MySQL存储过程进行调用

此文章主要向大家描述的是Python对MySQL存储过程进行调用的正确操作步骤,以及在其实际操作中值得我们大家注意的事项的描述,你如果对其有兴趣的话你就可以点击以下的文章进行观看了。环境:1.MySQL5.0 或者以上支持MySQL存储过程的版本2.安装MySQL-python,目前支持到2.x步骤:一.数据库准备1.建立表viewsourceprint?1CREATETABLE`Acco...

weixin_35651578的博客 421

Python MySQL使用基础

主键一般用于表示当前这条数据的ID编号(类似于人的身份证),需要我们自己来维护一个不重复的值。退出并再次修改配置文件,删除[mysqld]节点下的skip-grant-tables=1,之后再次重启就可以使用新密码登录了。同时创建必备一些数据,例如默认账户root(无密码),用于登录MySQL并通过指令操作MySQL。当连接上MySQL之后,执行如下命令(一般称为SQL语句),就可以对MySQL的数据进行操作。在解压目录下,创建my.ini文件作为MySQL的配置文件。进入数据库后执行修改密码命令。

weixin_46014373的博客 1095
上一篇: 【网络通信】IP 地址深度解析:从技术原理到企业级应用​
下一篇: 【超详细图文教程】Windows 系统 Go 语言环境安装与配置详细教程​
软测进阶
博客等级 码龄9年 2866粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值