数据库(MySQL) —— DDL语句

MySQL—— DDL语句

  • 什么是MySQL的DDL语句
  • 查看所有的所有数据库
  • 查看当前使用的数据库
  • 库操作
    • 创建库
    • 使用数据库
    • 删除库
  • 表操作
    • 创建表
    • 查询当前库中所有的表
    • 查询表结构
    • 查询指定表的建表语句
    • 删除表
  • 表修改
    • 删除字段
    • 修改数据类型
    • 修改字段名和字段类型
    • 重命名表
    • 删除指定表并重新创建该表

我们今天接着来学习MySQL的DDL语句,如果还没有看过上一篇MySQL的小伙伴可以点击这里:

https://blog.csdn.net/qq_67693066/article/details/138304228

什么是MySQL的DDL语句

MySQL的DDL(Data Definition Language,数据定义语言)语句是一类用于定义和管理数据库结构的SQL命令。DDL语句允许用户创建、修改和删除数据库中的各种对象,如数据库本身、表、列、索引、视图、存储过程、触发器等,而不涉及数据的实际操作。这些操作通常是数据库管理员(DBA)或有相应权限的开发人员执行的。

MySQL中常见的DDL语句包括:

  1. CREATE:用于创建数据库、表、索引、视图、存储过程、函数等数据库对象。
  • CREATE DATABASE mydb; 创建数据库
  • CREATE TABLE mytable (column1 datatype, column2 datatype); 创建表
  1. ALTER:用于修改现有数据库对象的结构,比如添加、删除或修改表的列、索引等。
  • ALTER TABLE mytable ADD column3 datatype; 向表中添加列
  1. DROP:用于删除数据库对象,比如删除表、索引或整个数据库。
  • DROP TABLE mytable; 删除表
  • DROP DATABASE mydb; 删除数据库
  1. TRUNCATE:虽然有时也被归类在DDL中,但实际上更多地影响数据,它用于清空表中的所有数据,但表结构保持不变。
  • TRUNCATE TABLE mytable; 清空表数据
  1. RENAME:用于重命名数据库或表。
  • ALTER TABLE oldname RENAME TO newname; 重命名表

DDL语句执行的结果通常会永久性地改变数据库结构,因此在执行之前应谨慎考虑并确保有相应的备份策略。

查看所有的所有数据库

查看所有的所有数据库我们要用到show databases

show databases;

在这里插入图片描述
同时注意一下,这几个数据库是系统自带的,不要删
在这里插入图片描述还有这几个用户,也是系统自带的,也不要删
在这里插入图片描述

查看当前使用的数据库

查看当前使用的数据库:

select database();

在这里插入图片描述这个结果表示我们还没有使用库。

库操作

创建库

创建库:

create database 数据库名字;

在这里插入图片描述

使用数据库

使用数据库:

use 数据库名;

在这里插入图片描述
再执行一次查看当前使用的数据库:
在这里插入图片描述

删除库

删除库:

drop database 数据库名称;

在这里插入图片描述

表操作

创建表

CREATE TABLE table_name (
    column1 datatype1,
    column2 datatype2,
    ...
);

其中,请将table_name替换为要创建的表的名称,将column1column2等替换为列名,将datatype1datatype2等替换为相应的数据类型。

例如,要创建一个名为employees的表,其中包含id、name和age列,您可以执行以下命令:

CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    age INT
);

在这里插入图片描述

查询当前库中所有的表

查询当前库中所有的表:

show tables;

在这里插入图片描述

查询表结构

查询表结构:

desc 表名;

在这里插入图片描述

查询指定表的建表语句

查询指定表的建表语句:

show create table 表名;

在这里插入图片描述

删除表

删除表:

drop table 表名;

在这里插入图片描述

表修改

如果我们想给employees表加上一个新的字段,我们可以使用

ALTER TABLE 表名 ADD COLUMN 字段名 数据类型;

例如,要在employees表中添加一个名为email的列,可以执行以下命令:

ALTER TABLE employees ADD COLUMN email VARCHAR(100);

在这里插入图片描述
再来看一下表结构:
在这里插入图片描述

删除字段

删除字段:

ALTER TABLE 表名 DROP COLUMN 字段;

例如,要从employees表中删除email列,您可以执行以下命令:

ALTER TABLE employees DROP COLUMN email;

在这里插入图片描述

修改数据类型

修改数据类型:

ALTER TABLE 表名 MODIFY COLUMN 旧类型 新类型;

例如,要将employees表中的age列的数据类型从INT更改为FLOAT,可以执行以下命令:

ALTER TABLE employees MODIFY COLUMN age FLOAT;

在这里插入图片描述

修改字段名和字段类型

修改字段名和字段类型:

ALTER TABLE 表名 CHANGE COLUMN 旧字段名 新字段名 类型(长度);

比如将employees表中的name改为NAME 并将varchar长度延伸到100:

ALTER TABLE employees CHANGE COLUMN name Name varchar(100);

在这里插入图片描述

重命名表

重命名表:

ALTER TABLE 旧表名 RENAME TO 新表名;

例如,要将employees表重命名为staff,您可以执行以下命令:

ALTER TABLE employees RENAME TO staff;

在这里插入图片描述

删除指定表并重新创建该表

删除指定表并重新创建该表:

TRUNCATE TABLE 表名;

我们可以对staff表进行操作:

TRUNCATE TABLE staff;

这里我先插入一条数据:
在这里插入图片描述

然后重新执行这条语句:
在这里插入图片描述再来看:

在这里插入图片描述
发现原来的记录没有了,这是因为我们删除又重新创建了表。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/590222.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C++】命名冲突了怎么办?命名空间来解决你的烦恼!!!C++不同于C的命名方式——带你认识C++的命名空间

命名空间 导读一、什么是C?二、C的发展三、命名空间3.1 C语言中的重名冲突3.2 什么是命名空间?3.3 命名空间的定义3.4 命名空间的使用环境3.5 ::——作用域限定符3.6 命名空间的使用方法3.6.1 通过作用域限定符来指定作用域3.6.2 通过关键字using和关键字namespace…

【书生·浦语大模型实战营第二期】OpenCompass 大模型评测实战——学习笔记7

文章目录 使用OpenCompass评测llm的步骤实践操作 参考资料 为什么要做大模型的评测 为了了解llm的优势和限制指导和改进人类与llm的交互规划llm未来的发展根据llm的评测报告,针对不同的问题,选择最合适的模型 评测对象 基座模型和chat模型 使用OpenCo…

ArcGIS+ChatGPT双剑合璧:从数据读取到空间分析,一站式掌握GIS与AI融合的前沿科技!

目录 专题一 AI大模型应用 专题二 ArcGIS工作流程及功能 专题三 prompt的使用技巧 专题四 AI助力工作流程 专题五 AI助力数据读取 专题六 AI助力数据编辑与处理 专题七 AI助力空间分析 专题八 AI助力遥感分析 专题九 AI助力二次开发 专题十 AI助力科研绘图 专题十一…

基于php+mysql+html超市商品管理系统(含论文)

博主介绍: 大家好,本人精通Java、Python、Php、C#、C、C编程语言,同时也熟练掌握微信小程序、Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

IntelliJ IDEA - Auto filling Java call arguments 插件教程

首先,安装该插件,下载完毕后重启 IDEA 当 userService 中方法需要参数的时候,我们一般都是自己手动写这些参数,是很费劲的。因此就出现了一个插件解决这类问题 Auto filling Java call arguments 光标点击需要填写参数的位置 Alt …

蓝桥杯备战国赛1

开心的金明 火烧赤壁 南蛮图腾 #include<iostream> #include<algorithm> #include<cmath> using namespace std; int n, m; int v[30], k[30]; int arr[30010][30]; int main() {cin >> n >> m;for (int i 1;i < m;i){cin >> v[i] &g…

2024年企业邮箱系统排行榜:五款企业邮箱对比

2024年企业邮箱怎么选择&#xff1f;在企业邮箱市场中&#xff0c;Zoho Mail企业邮箱、腾讯企业邮箱、Gmail、阿里企业邮箱以及网易企业邮箱位于排名的前五。本篇文章就详细对比下这五款企业邮箱的发展历程、产品功能和适用的场景。 一、Zoho Mail企业邮箱 1、发展历程 Zoho M…

im即时通讯源码/仿微信app源码+php即时通讯源码带红包+客服+禁言等系统php+uniapp开发

即时通讯(IM)系统是现代互联网应用中不可或缺的一部分&#xff0c;它允许用户进行实时的文本、语音、视频交流。随着技术的发展&#xff0c;IM系统的功能越来越丰富&#xff0c;如红包、客服、禁言等。本文将探讨如何使用PHP语言开发一个功能完备的即时通讯系统&#xff0c;包括…

截图时,VSCode屏幕泛白

问题如图所示&#xff1a; 放弃前摇&#xff0c;直接给出解决方案&#xff1a;换个主题即可。 实测&#xff0c;Light Modern 的色域正常&#xff0c;其他的没有经过测试。 出现这个问题的原因&#xff0c;大概率就是色彩空间不匹配。 HDR 内容是为了在支持 HDR 的显示设备上展…

【Linux学习】(2)OS的简单了解|Linux的基本指令操作

前言 本文将先简单了解什么是操作系统&#xff0c;再讲解一些Linux的基本指令。 一、操作系统的简单了解 1、什么是操作系统&#xff08;Operating System&#xff0c;简称OS&#xff09;&#xff1f; OS是一款做软硬件管理的软件。软硬件的体系结构图&#xff1a; 硬件&…

RabbitMQ入门教学(浅入浅出)

进程间通信 互联网的通讯时网络的基础&#xff0c;一般情况下互联网的资源数据对储存在中心服务器上&#xff0c;一般情况下个体对个体的访问仅限于局域网下&#xff0c;在公网即可完成资源的访问&#xff0c;如各种网站资源&#xff0c;下载资源&#xff0c;种子等。网络通讯…

php使用Canal监听msyql

canal需要java8 去官网下载java8 安装JAVA #创建目录 mkdir -p /usr/local/java/ #解压到目录 tar zxvf jdk-8u411-linux-x64.tar.gz -C /usr/local/java/配置环境变量在 /etc/profile 最后加入 export JAVA_HOME/usr/local/java/jdk1.8.0_411 export CLASSPATH.:$JAVA_HOM…

代码随想录算法训练营DAY50|C++动态规划Part11|300.最长递增子序列、674.最长连续递增序列、718.最长重复子数组

文章目录 300.最长递增子序列思路CPP代码 674.最长连续递增序列思路CPP代码 718.最长重复子数组思路CPP代码 300.最长递增子序列 力扣题目链接 文章讲解&#xff1a;300.最长递增子序列 视频链接&#xff1a;动态规划之子序列问题&#xff0c;元素不连续&#xff01;| LeetCode…

蓝牙连接手机播放音乐的同时传输少量数据,那些蓝牙芯片可以实现呢

简介 蓝牙连接手机播放音乐的同时连接另一蓝牙芯片传输少量数据&#xff0c;那些蓝牙芯片可以实现呢&#xff1f; 这个需求&#xff0c;其实就是双模的需求 简单描述就是:播放音乐的同时&#xff0c;还可以连接ble&#xff0c;进行数据的传输。二者同时进行&#xff0c;互不…

JavaScript中的Math对象方法、Date对象方法

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;JavaScript 精粹 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 &#x1f31f;Math对象方法&#x1f344;1 Math静态属性&#x1f344;2 Math…

精简函数栈帧:优化创建和销毁过程的完全解析(建议收藏,提升内功)

&#x1f308;个人主页&#xff1a;是店小二呀 &#x1f308;C语言笔记专栏&#xff1a;C语言笔记 &#x1f308;C笔记专栏&#xff1a; C笔记 &#x1f308;喜欢的诗句:无人扶我青云志 我自踏雪至山巅 文章目录 【前文】一、函数栈帧的概念&#xff08;stack frame&#xff…

VS(Visual Studio)中查找项目里的中文字符

目录 正则表达式查找中文字符 正则表达式查找中文字符 在Visual Studio (VS) 中查找所有的中文字符&#xff0c;你可以使用其强大的查找和替换功能。不过&#xff0c;由于中文字符的范围非常广泛&#xff08;包括简体中文、繁体中文、日本汉字、韩国汉字等&#xff09;&#xf…

【Docker第一课】docker的基本命令和试启动容器(详细图解)

目录 知识梗概 docker的初步了解 了解docker常用命令 试开启容器&#xff08;这里演示nginx、python3和mysql&#xff09; 1、nginx容器的启动 2、python3容器的启动 docker的作用 虚拟机与容器的区别 写在前面&#xff1a; 本专栏你将了解docker一些入门知识&#xff…

拼多多新店和老店哪个好做

拼多多新店和老店哪个好做 拼多多推广可以使用3an推客。3an推客&#xff08;CPS模式&#xff09;给商家提供的营销工具&#xff0c;由商家自主设置佣金比例&#xff0c;激励推广者去帮助商家推广商品链接&#xff0c;按最终有效交易金额支付佣金&#xff0c;不成交不扣费。是商…