当前位置: 首页 > news >正文

21 天 Python 计划:MySQL 库相关操作

文章目录

    • 前言
    • 一、系统数据库
      • 1. information_schema
      • 2. performance_schema
      • 3. mysql
      • 4. test
    • 二、创建数据库
      • 1. 语法
      • 2. 数据库命名规则
    • 三、数据库相关操作
      • 1. 查看数据库
      • 2. 选择数据库
      • 3. 删除数据库
      • 4. 修改数据库
    • 总结

前言

Python是一种强大且易于学习的编程语言。通过这个21天的计划,我们将逐步深入MySQL库相关操作。无论你是初学者还是有一定基础的开发者,这个计划都将帮助你巩固和扩展你的Python知识。

在学习本篇之前,我们先复习一下前面的内容:
day1:Python下载和开发工具介绍
day2:数据类型、字符编码、文件处理
day3:基础语法与课外练习
day4:函数简单介绍
day5:模块与包
day6:常用模块介绍
day7:面向对象
day8:面向对象高级
day9:异常处理
day10:网络编程
day11:MySQL 数据库初识

一、系统数据库

在使用 MySQL 数据库时,了解系统数据库的结构和功能,掌握数据库的创建、查看、修改和删除等操作是非常重要的。本文将详细介绍 MySQL 中的系统数据库,以及如何进行数据库的创建和相关操作。MySQL 中有几个重要的系统数据库,它们各自承担着不同的功能。

1. information_schema

这是一个虚拟库,不占用磁盘空间。它存储的是数据库启动后的一些参数,包括用户表信息、列信息、权限信息、字符信息等。以下是一些常用的表及其用途:

  • TABLES 表:提供了关于数据库中的表的信息。
mysql> use information_schema;
mysql> select * from tables limit 1\G;
mysql> select * from tables where TABLE_NAME='city'\G;
  • COLUMNS 表:提供了关于数据库中表的列的信息。
mysql> select * from columns\G;
  • STATISTICS 表:存储表索引的信息。
  • COLLATIONS 表:提供校验规则和字符集对应关系。

下面是 TABLES表中一些重要字段的含义:

  • Table_catalog:数据表登记目录
  • Table_schema:数据表所属的数据库名
  • Table_name:表名称
  • Table_type:表类型,如 system view(系统表)或 base table(数据表)
  • Engine:使用的数据库引擎,如 MyISAM、CSV、InnoDB
  • Version:版本,默认值 10
  • Row_format:行格式,如 Compact、Dynamic、Fixed
  • Table_rows:表里所存多少行数据
  • Avg_row_length:平均行长度
  • Data_length:数据长度
  • Max_data_length:最大数据长度
  • Index_length:索引长度
  • Data_free:空间碎片,刚刚用过的暂时不再使用
  • Auto_increment:做自增主键的自动增量当前值,可以通过导出再导入数据进行释放
  • Create_time:表的创建时间
  • Update_time:表的更新时间
  • Check_time:表的检查时间
  • Table_collation:表的字符校验编码集
  • Checksum:校验和
  • Create_options:创建选项
  • Table_comment:表的注释、备注

我们还可以在创建表时添加列注释和表注释,示例如下:

CREATE TABLE student(gid int primary key COMMENT '列注释') COMMENT='表注释';

2. performance_schema

这是 MySQL 5.5 开始新增的一个数据库,主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、锁等现象。

3. mysql

这是一个授权库,主要存储系统用户的权限信息。

4. test

这是 MySQL 数据库系统自动创建的测试数据库。

二、创建数据库

1. 语法

可以使用以下语法创建数据库:

CREATE DATABASE 数据库名 charset utf8;

2. 数据库命名规则

  • 可以由字母、数字、下划线、@、#、$ 组成。
  • 区分大小写。
  • 具有唯一性。
  • 不能使用关键字,如 create、select等。
  • 不能单独使用数字。
  • 最长 128 位。

三、数据库相关操作

1. 查看数据库

  • show databases;:显示所有数据库。
  • show create database db1;:显示指定数据库(如 db1)的创建语句。
  • select database();:显示当前使用的数据库。

2. 选择数据库

使用 USE 数据库名语句来选择要使用的数据库,例如:

USE db1;

3. 删除数据库

使用 DROP DATABASE 数据库名;语句来删除指定的数据库,例如:

DROP DATABASE db1;

4. 修改数据库

可以使用 alter database语句来修改数据库的字符集,例如:

alter database db1 charset utf8;

总结

通过本文的介绍,我们了解了 MySQL 中的系统数据库,包括 information_schema、performance_schema、mysql和 test的功能和用途。同时,我们也掌握了数据库的创建、查看、选择、删除和修改等操作。这些知识对于管理和使用 MySQL数据库非常重要,希望大家在实际应用中能够灵活运用。

在 Python 中,我们可以使用 mysql-connector-python 库来执行上述 SQL 语句,以下是一个简单的示例:

import mysql.connector# 连接到 MySQL 服务器
mydb = mysql.connector.connect(host="localhost",user="yourusername",password="yourpassword"
)# 创建一个游标对象
mycursor = mydb.cursor()# 创建数据库
mycursor.execute("CREATE DATABASE testdb charset utf8")# 查看所有数据库
mycursor.execute("SHOW DATABASES")
for x in mycursor:print(x)# 选择数据库
mycursor.execute("USE testdb")# 创建表
mycursor.execute("CREATE TABLE student(gid int primary key COMMENT '列注释') COMMENT='表注释'")# 关闭连接
mydb.close()

这个示例展示了如何使用 Python 连接到 MySQL 服务器,创建数据库和表,并查看所有数据库。希望这个示例能帮助你更好地理解如何在 Python 中操作 MySQL 数据库。


http://www.mrgr.cn/news/97365.html

相关文章:

  • 类与对象(中)(详解)
  • k8s1.24升级1.28
  • [刷题总结] 双指针 滑动窗口
  • 【内网安全】DHCP 饿死攻击和防护
  • Gerapy二次开发:用户管理专栏主页面开发
  • 【ARTS】【LeetCode-2873】有序三元组中的最大值!
  • CSS快速上手
  • 手撕LLM(二):从源码出发,探索LoRA加载、推理全流程
  • CentOS Linux升级内核kernel方法
  • rust 同时处理多个异步任务,并在一个任务完成退出
  • 毕业设计:实现一个基于Python、Flask和OpenCV的人脸打卡Web系统(六)
  • Nginx 生产配置文件
  • 数据分析-Excel-学习笔记Day1
  • TYUTJava阶段测试
  • 新一代AI架构实践:数字大脑AI+智能调度MCP+领域执行APP的黄金金字塔体系
  • java发送http请求
  • k8s 1.23升级1.24
  • k8s之Ingress讲解
  • TDengine 从入门到精通(2万字长文)
  • 线程池/内存池/mysql连接池