MYSQL 学习(四):数据库管理

server/2024/10/20 16:21:20/

MYSQL 学习(四):数据库管理

文章目录

  • MYSQL 学习(四):数据库管理
    • 1. 数据库表的创建与管理
      • 1.1 创建数据库
        • 命名规范
        • 创建语法
      • 1.2 管理语法
    • 2. 创建和管理表
      • 2.1 创建语法结构
      • 2.2 基于现有表创建表
      • 2.3 查看表结构
      • 2.4 表管理
        • 字段操作
        • 表操作
    • 3. 数据处理:增删改(DML)
      • 3.1 插入数据
      • 3.2 更新数据
      • 3.3 删除数据
    • 4. MySQL 8.0 新特性:计算列
      • 4.1 了解计算列

1. 数据库表的创建与管理

1.1 创建数据库

命名规范
  • 遵循数据库命名规则,避免与关键字冲突。
  • 确保数据库命名唯一,避免重复。
  • 当存在关联字段时,建议使用相同的命名以增强可读性和维护性。
创建语法
CREATE DATABASE IF NOT EXISTS `库名` (CHARACTER SET `字符集`
);

1.2 管理语法

2. 创建和管理表

2.1 创建语法结构

CREATE TABLE IF NOT EXISTS `表名` (`属性名` `类型名`
);

2.2 基于现有表创建表

CREATE TABLE `新表名` AS
SELECT ...
FROM `表名`;

2.3 查看表结构

SHOW CREATE TABLE `表名`;

2.4 表管理

字段操作
  • 添加字段:
    ALTER TABLE `表名` ADD COLUMN `属性名` `类型名` (FIRST | AFTER `字段名`);
    
  • 修改字段:
    ALTER TABLE `表名` MODIFY COLUMN `属性名` `类型名` (DEFAULT `默认值`);
    
  • 修改字段名称:
    ALTER TABLE `表名` CHANGE `旧名` `新名` `属性名` `类型名`;
    
  • 删除字段:
    ALTER TABLE `表名` DROP COLUMN `字段名`;
    
表操作
  • 重命名表:
    RENAME TABLE `表名` TO `新表名`;
    
  • 删除表:
    DROP TABLE IF EXISTS `表名`;
    
  • 清空表:
    TRUNCATE TABLE `表名`;
    

3. 数据处理:增删改(DML)

3.1 插入数据

  • 逐条插入:
    INSERT INTO `表名` (`字段名1`, `字段名2`, ...) VALUES (`1`, `2`, ...);
    
  • 批量插入:
    INSERT INTO `表名` (`字段名1`, `字段名2`, ...) VALUES (`1`, `2`, ...), (`1`, `2`, ...);
    
  • 从查询结果插入:
    INSERT INTO `表名` (`字段名1`, `字段名2`, ...) SELECT `字段名1`, `字段名2`, ... FROM `表名2`;
    

3.2 更新数据

UPDATE `表名`
SET `字段` = `新值`
WHERE `条件`;

3.3 删除数据

DELETE FROM `表名`
WHERE `条件`;

4. MySQL 8.0 新特性:计算列

4.1 了解计算列

CREATE TABLE `test1` (`a` INT,`b` INT,`c` INT GENERATED ALWAYS AS (`a` + `b`) VIRTUAL
);
  • 计算列 c 总是基于 ab 的和计算得出,且为虚拟列,不会实际存储数据。

http://www.ppmy.cn/server/133387.html

相关文章

chat_gpt回答:python从bin文件里读四字节整型

要从一个二进制文件(.bin 文件)中读取四字节的整型数值,你可以使用 Python 的 struct 模块,这个模块专门用于处理二进制数据的打包和解包。 下面是一个简单的示例,展示如何从二进制文件中读取四字节整型: …

【代理模式使用场景】

一般来说,代理模式使用场景是远程代理、虚拟代理、安全代理等。下面来详细介绍下这三个场景是什么,实现原理和特点。不过在介绍三个场景前,我们还是先来回顾下代理模式。 代理模式 定义 是结构型设计模式,引入一个对象控制对另…

深度学习基础知识-02 数据预处理

深度学习的数据预处理通常包括: 1.数据清洗:去除错误或不完整的数据。 2.归一化:调整数据范围,如将像素值缩放到0-1。 3.数据增强:通过旋转、缩放等方法增加数据多样性。 4.数据划分:将数据分为训练集、验证…

使用LLM和RAG进行数据库查询(文本到SQL)的四大挑战及解决方案

大型语言模型(LLM)的出现展示了机器理解自然语言的能力。这些能力帮助工程师完成了许多令人惊叹的工作,比如编写代码文档和代码审查,而最常见的用例之一是代码生成;GitHub Copilot展示了AI理解工程师代码生成意图的能力…

微信开发者工具:音乐小程序报错

报错信息 GET http://localhost:3000/1.mp3 net::ERR CONNECTION REFUSED (env: Windows,mp,1.06.2303220;lib:3.6.0) 原因:小程序没有直接获取本地文件,为了提高访问速度,而采用放到网络服务器中网络访问的方式获取文件内容 解决办法&#…

为图片添加水印(Python)

简介 刚好学了一下tkinter.colorchooser,然后…… 优化了以前的代码,不过仍然是shi 功能 可自由添加水印内容、选择颜色、字体及字体大小、图片、水印的x、y位置 代码 # -*- coding: utf-8 -*- # Environment PyCharm # File_name visibleWat…

python 作业1

任务1: python为主的工作是很少的 学习的python的优势在于制作工具,制作合适的工具可以提高我们在工作中的工作效率的工具 提高我们的竞争优势。 任务2: 不换行 换行 任务3: 安装pycharm 进入相应网站Download PyCharm: The Python IDE for data science and we…

输入输出--I/O流【C++提升】

1.1基础知识&#xff1a; 在C中&#xff0c;输入输出&#xff08;IO&#xff09;流是通过标准库中的 <iostream> 头文件来处理的。C 提供了几种基本的输入输出流类&#xff0c;最常用的有以下几种&#xff1a; std::cin&#xff1a;用于输入。std::cout&#xff1a;用于…