MySQL-DDL语句

MySQL-DDL语句

  • 数据库操作语句
    • 增删数据库
      • 查看数据库列表
      • 创建数据库
      • 进入(使用)数据库/查看当前所在的数据库
      • 查看数据库的建库语句
      • 查看数据库的编码集和校验集
      • 删除数据库
      • 修改数据库的编码集
      • 查看数据库支持的编码集和校验集
    • 数据库备份
      • 备份单个数据库
      • 恢复数据库
      • 备份多个数据库
      • 备份数据库中的表结构
    • 查看登录列表
  • 表结构操作语句
    • 创建表
      • 查看此数据库下的所有表
      • 查看表的详细信息
      • 查看建表语句
    • 修改表
      • 删除表
      • 插入数据
      • 增加属性列
      • 更改属性列的数据类型
      • 更改属性列的属性名
      • 删除某一属性列

数据库操作语句

增删数据库

查看数据库列表

show databases;

在这里插入图片描述

其中前四个数据库是MySQL数据库自带的,test_db是后来新创建的数据库。

创建数据库

create database db1;
create database [if not exists] dbname [charset = utf8  collate utf8_general_ci engine=innodb]
//上面上种是完整的建库语句,如果在配置文件中设置了编码集和存储引擎可以不用显示写出。

在这里插入图片描述
🚀创建数据库的本质:在Linux下安装的MySQL,创建一个数据库就是在 /var/lib/mysql目录下创建一个目录文件。创建表结构就是在相应的数据库目录下创建表文件。
在这里插入图片描述
在这里插入图片描述

db.opt文件内记录了该数据库的配置信息。

进入(使用)数据库/查看当前所在的数据库

use db_name; //使用或者进入名字为db_name的数据库
select database(); //查看当前所在的数据库

查看数据库的建库语句

show create database db_name; //\G是格式化显示	

在这里插入图片描述

查看数据库的编码集和校验集

show variables like "character_set_database"; 
show variables like "collation_database";

在这里插入图片描述

在这里插入图片描述
🚀编码集和校验集

编码集是指数据在数据库中以怎样的编码格式存储
校验集是指在数据库中读取数据或者是进行数据对比是采用的编码格式。

删除数据库

drop database [if exists] db_name;

修改数据库的编码集

alter database db_name charset = gbk; //修改数据库的编码集

在这里插入图片描述
在这里插入图片描述

可以看到当我们修改数据库的编码集时,其校验集跟随着自动发生改变。

查看数据库支持的编码集和校验集

show charsetshow collation;

在这里插入图片描述
在这里插入图片描述

数据库备份

备份数据库的操作在root权限下进行。

备份单个数据库

mysqldump -u -P -p -B test_db > /home/gy/test_db.sql
//在命令行中,不是在MySQL中输出此语句
//-u后面跟用户名
//-p后面跟密码(有密码的话)
//-P 指明数据库使用的端口号
//-B 后面跟数据库名称

恢复数据库

source 路径/test_db.sql; 导入之前备份的数据库文件

备份多个数据库

mysqldump -u -P -p -B test_db > /home/gy/test_db.sql db1 > /home/gy/db1.sql //直接在后面追加即可

在这里插入图片描述

备份数据库中的表结构

 mysqldump -P -u -p  指定数据库 表12 > name.sql

在这里插入图片描述

备份文件中的数据

在这里插入图片描述

查看登录列表

show processlist;

在这里插入图片描述

表结构操作语句

创建表

create table tb_name (字段名,数据类型...
)[character set 编码集 collate 校验集 engine 存储引擎];
create table t3( id int, name varchar(12) )character set utf8 collate utf8_general_ci engine=innodb;

查看此数据库下的所有表

show tables;

在这里插入图片描述

查看表的详细信息

desc tb_name;

在这里插入图片描述

查看建表语句

show create table tb_name\G; \G用于格式化显示

在这里插入图片描述
🚀comment—建表时对某一列属性进行文字说明

create table stu (sno char(12) primary key comment '这是学号', sname varchar(10) comment '学生姓名' 
);
//使用show create table tb_name;来查看建表语句时就可以看到建表时对属性列的描述

在这里插入图片描述

修改表

删除表

drop table tb_name;

🚀修改表名

alter table tb_name rename to newtb_name;
//alter table stu rename to student;

在这里插入图片描述

插入数据

insert into tb_name [(属性列...)]全列插入时可省略 values(插入的属性值); 

1.全列插入

insert into student values('1001','张三');

2.指定列插入

insert into student(sno) values('1002');

增加属性列

alter table tb_name add 属性列名 数据类型[after 属性列];

1.在学生表中插入年龄这一属性列

alter table student add age int;

在这里插入图片描述
2.在学生表中插入性别这一属性列,并且要求在姓名列后

alter table student add gender enum('男','女') after sname;

在这里插入图片描述

更改属性列的数据类型

alter table tb_name modify 属性名 数据类型;

1.修改学生表中性别数据类型为char(1)

alter table student modify gender char(1);

在这里插入图片描述

更改属性列的属性名

alter table tb_name change oldname newname 数据类型;

1.修改学生表中性别的属性名为sex

alter table student change gender sex char(1);

在这里插入图片描述

删除某一属性列

alter table tb_name drop 属性列;

1.删除学生表中年龄字段

alter table student drop age;

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rust编译出错:error: failed to run custom build command for `ring v0.16.20`

安装 Visual Studio,确保选择 —.NET 桌面开发、使用 C 的桌面开发和通用 Windows 平台开发。显示已安装的工具链rustup show。然后通过运行更改和设置工具链rustup default stable-x86_64-pc-windows-msvc。 另外是想用clion进行调试rust 需要你按下面配置即可解…

solidworks底部状态栏显示不出来

如下图所示,solidworks主界面下面的状态栏突然不见了。 怎么调出来? 第一步:点击视图菜单,用户界面,把状态栏前的勾勾上。 第二步:把视图下面的触摸模式关掉,这一点很容易被大家忽略。

Oracle(1):Oracle简介

1 什么是 ORACLE ORACLE 数据库系统是美国 ORACLE 公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S 体系结构的数据库之一。 ORACLE 通常应用于大型系统的数据库产品。 ORACLE 数据…

全面详解Maven的配置文件pom.xml(含常用plugin)

系列文章目录 手把手教你maven的安装与配置(windows) 全面详解Maven的配置文件pom.xml(含常用plugin) 系列文章目录一、什么是pom.xml二、pom.xml的结构三、项目的基本信息1.modules2.parent3.scm4.properties 四、项目的依赖列表1.dependency2.reposit…

【服务器 | 测试】如何在centos 7上面安装jmeter

安装之前需要几个环境,以下是列出的几个环境 CentOS 7.7 64位JDK 1.8JMeter 5.2 1. 下载jmeter安装包 JMeter是开源的工具,安装 JMeter 要先安装好 JDK 的环境,安装JDK在前面的文章已经讲到 JMeter最新版下载地址:Apache JMeter…

X86_64函数调用汇编程序分(2)

X86_64函数调用汇编程序分(2) 1 X86_64寄存器使用标准2 leaveq和retq指令2.1 leaveq2.2 retq 3 执行leaveq和retq之后栈的结构3.1 执行leaveq之后栈的结构3.1.1 test_fun_b函数执行leaveq之前的栈结构示意图3.1.2 test_fun_b函数执行leaveq之后的栈结构示…

JSP SSM 成果展示系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 JSP SSM 冬奥建设成果展示系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的 源代码和数据库,系统主…

ubuntu基本配置

记录一下每次重新安装系统之后都要进程的操作 更新源 更新源的教程 sudo bash -c "cat << EOF > /etc/apt/sources.list && apt update deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb-src http://mirrors.a…

LLM - 数据处理之 Process Dataset For LLM With PT、SFT、RM

目录 一.引言 二.PT 数据流程 1.数据样式 2.生成代码 3.数据生成 三.SFT 数据流程 1.数据样式 2.生成代码 3.数据生成 四.RM 数据流程 1.生成逻辑 2.RM 模型测试 五.总结 一.引言 上篇文章 LLM - 批量加载 dataset 并合并介绍了如何加载多个文件并合成一个 datas…

leetcode:67. 二进制求和

题目&#xff1a; 函数原型&#xff1a; char * addBinary(char * a, char * b) 思路&#xff1a; 二进制相加&#xff0c;首先我们考虑先将字符串逆序。由此要写一个逆序函数reserve。字符串逆序后&#xff0c;从前往后相加&#xff0c;以较长的字符串的长度为标准长度n&#…

【光谱超分辨率:综述】

Spectral super-resolution meets deep learning: Achievements and challenges &#xff08;面向深度学习的光谱超分辨率&#xff1a;成就和挑战&#xff09; 光谱超分辨率是一种从RGB图像获取高光谱图像的重要技术&#xff0c;可以有效地克服高光谱图像获取成本高、空间分辨…

vite + react + typescript + uni-app + node 开发一个生态系统

简介 使用 vite react typescript uni-app node 来开发一个简易的生态系统案例&#xff0c;包含 APP&#xff0c;H5&#xff0c;微信小程序&#xff0c;控制台&#xff0c;服务端 开发 admin 技术栈&#xff1a;vite react typescript初始化控制台项目选择自定义预设…

Gitlab仓库部署

Gitlab仓库部署 一、Gitlab的概述1、gitlab介绍2、gitlab主要功能3、gitlab和github的区别 二、部署环境1、安装依赖环境2、安装Postfix邮箱3、Gitlab优势4、Gitlab工作流程 三、Gitlab部署过程1、Yum安装Gitlab2、配置gitlab站点URL3、启动并访问Gitlab 四、Gitlab具体操作1、…

CSS盒子模型

盒子模型的组成 CSS会把所有的HTML元素都看成一个盒子&#xff0c;所有的样式也都是基于这个盒子 content&#xff08;内容&#xff09;&#xff1a;盒子的内容padding&#xff08;内边距&#xff09;&#xff1a;用于控制元素内部与边框之间的距离border&#xff08;边框&…

Qt打开及创建项目,运行程序(1)

安装之后&#xff0c; 1.文件->新建文件或项目 2.Application->Qt Widgets Application 3.自己设置名称和路径 4.这一步非常非常重要&#xff0c;要选择编译器&#xff0c;&#xff08;MinGW是可以在Qt里用&#xff0c;如果想与VS交互&#xff0c;要选择MSVC&#xff09…

去除pdf/word的水印艺术字

对于pdf中的水印如果无法去除水印&#xff0c;则先另存为word&#xff0c;然后再按下面办法处理即可&#xff1a; 查看宏&#xff0c;创建&#xff1a;删除艺术字 添加内容&#xff1a; Sub 删除艺术字()Dim sh As ShapeFor Each sh In ActiveDocument.ShapesIf sh.Type msoT…

如何使用谷歌浏览器连接linux服务器SSH服务

环境&#xff1a; 谷歌浏览器 版本 116.0.5845.141&#xff08;正式版本&#xff09; &#xff08;64 位&#xff09; Win10 专业版 安全外壳 (SSH)v.0.58 问题描述&#xff1a; 如何使用谷歌浏览器连接linux服务器SSH服务 解决方案&#xff1a; 1.找了有台安装好了这个插…

计算机视觉实战项目(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别)

图像分类 教程博客_传送门链接:链接 在本教程中&#xff0c;您将学习如何使用迁移学习训练卷积神经网络以进行图像分类。您可以在 cs231n 上阅读有关迁移学习的更多信息。 本文主要目的是教会你如何自己搭建分类模型&#xff0c;耐心看完&#xff0c;相信会有很大收获。废话不…

Vite+React+Electron开发入门,10分钟搭建本地环境并打包

前言 想使用vite和react开发跨平台桌面的软件方案有electron和tauri两种&#xff0c;但是我个人更喜欢tauri&#xff0c;无奈electron名声大燥&#xff0c;面试要求里很多都写着&#xff1a;electron...可见这类公司多么落后。但是呢&#xff0c;又秉持着存在即合理的理念&…

Ubuntu22.04开启后屏幕黄屏

1. 故障现象 系统&#xff1a;Ubuntu22.04 现象&#xff1a;电脑从开机到进入桌面一直屏幕黄屏 2. 故障分析 可能为屏幕色彩调节出现故障 3. 解决方案 系统设置——》色彩——》删除原来的配置&#xff08;remove profile&#xff09;——》添加配置Colorspace:Compatibl…