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 charset;
show 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 指定数据库 表1 表2 > 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;

相关文章:
MySQL-DDL语句
MySQL-DDL语句 数据库操作语句增删数据库查看数据库列表创建数据库进入(使用)数据库/查看当前所在的数据库查看数据库的建库语句查看数据库的编码集和校验集删除数据库修改数据库的编码集查看数据库支持的编码集和校验集 数据库备份备份单个数据库恢复数…...
总结987
考研倒计时102天 时间记录: 6:20起床 7:00~7:40早读,13年tex2 7:50~8:20实验室 8:30~8:34列日计划 8:40~11:18进步本回顾,记录 11:20~12:20计算机网络网课 2:10~3:05计网20道选择题 3:07~4:42政治1000题25道选择题纠错 …...
【服务器 | 测试】如何在centos 7上面安装jmeter
安装之前需要几个环境,以下是列出的几个环境 CentOS 7.7 64位JDK 1.8JMeter 5.2 1. 下载jmeter安装包 JMeter是开源的工具,安装 JMeter 要先安装好 JDK 的环境,安装JDK在前面的文章已经讲到 JMeter最新版下载地址:Apache JMeter…...
20.04部署cartographer
部署cartographer sudo apt-get update sudo apt-get install -y python3-wstool python3-rosdep ninja-build stow下载cartographer新建了一个ws mkdir carto_ws cd carto_ws wstool init src wstool merge -t src https://raw.githubusercontent.com/cartographer-project/…...
djangoMTV初探
1.restful请求方式 一个视图对应多个操作(增删改查) 老的方式 views.py from django.shortcuts import render from django.http import HttpResponse,request,QueryDict, JsonResponse from myapp.models import User from django.views.generi…...
Minecraft--基于云服务器搭建自己的服务器--简易搭建
阿丹: 上一个项目结束了。但是看着自己的服务器想着能不能做点啥子吧。想到了之前和兄弟们玩的麦块。好久没和兄弟们一起玩耍了。怀念之前一起连一个wifi玩我的世界的时候是真快乐。于是尝试自己动手搭建一个我的世界服务器,邀请兄弟们重温一下快乐。 提…...
【数据结构与算法】十大经典排序算法
文章目录 前言一、常见十大排序算法总结1、名词解释2、时间复杂度 二、排序算法与C语言实现1、冒泡排序2、选择排序3、插入排序4、希尔排序5、归并排序6、快速排序7、堆排序8、计数排序9、桶排序10、基数排序 总结 前言 排序算法是《数据结构与算法》中最基本的算法之一。 排序…...
Android 12.0 SystemUI下拉状态栏定制化之隐藏下拉通知栏布局功能实现(一)
1.前言 在12.0的系统定制化开发中,由于从12.0开始SystemUI下拉状态栏和11.0的变化比较大,所以可以说需要从新分析相关的SystemUI的 布局,然后做分析来实现不同的功能,今天就开始实现关于隐藏SystemUI下拉状态栏中的通知栏布局系列一 如图: 2.SystemUI下拉状态栏定制化之…...
665. 非递减数列-先改后验法
665. 非递减数列 给你一个长度为 n 的整数数组 nums ,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。 我们是这样定义一个非递减数列的: 对于数组中任意的 i (0 < i < n-2),总满足 nums[i] < …...
调教 文心一言 生成 AI绘画 提示词(Midjourney)
文章目录 第一步第二步第三步第四步第五步第六步第七步第八步 文心一言支持连续对话 我瞎玩的非专业哈哈 第一步 你好,今天我们要用扩散模型创建图像。我会给你提供一些信息。行吗? 第二步 这是Midjourney的工作原理:Midjourney是另一个基于ai的工具,能…...
半导体制造工艺(一)光刻
在这里开个新专题,主要详细描述半导体制造整个流程中所用到的设备工艺步骤。 在集成电路制造工艺中,光刻是决定集成器件集成度的核心工序,该工序的作用是将图形信息从掩模版(也称掩膜版)上保真传输、转印到半导体材料衬…...
【海思SS626 | 开发环境】VMware17安装Ubuntu 18.04.6
目录 一、下载 Ubuntu 18.04.6 LTS二、VMware17创建虚拟机三、安装Ubuntu18.04LTS四、安装其他软件五、总结 一、下载 Ubuntu 18.04.6 LTS 问题:为什么要下载 Ubuntu18.04.6 LTS 而不是使用最新的,或者其他Linux发行版? 答:在ss6…...
Vue知识系列(3)每天10个小知识点
目录 系列文章目录Vue知识系列(1)每天10个小知识点Vue知识系列(2)每天10个小知识点 知识点**21. Vue不同生命周期**的概念、作用、原理、特性、优点、缺点、区别、使用场景**22. Vue 子组件和父组件执行顺序****23. created 和 mo…...
Java基础入门·多线程·线程池ThreadPool篇
前言 特点分析 线程池ThreadPool 销毁线程池 Executor类 Callable接口 线程池使用 …...
Trinitycore学习之在vscode查看远端服务器上源码配置
1:安装vscode,去官网下载,这里下载windows版本安装包 .zip https://code.visualstudio.com/Download 2:安装后,安装扩展chinese,使用中文设置,需要重启vscode。 3:安装ssh相关插件…...
583. 两个字符串的删除操作 -- 动规
583. 两个字符串的删除操作 class MinDistance:"""583. 两个字符串的删除操作https://leetcode.cn/problems/delete-operation-for-two-strings/description/"""def solution(self, text1: str, text2: str) -> int:"""这道题…...
SOME/IP
介绍 SOME/IP是一种汽车中间件解决方案,可用于控制消息。它从一开始就被设计为完美地适应不同尺寸和不同操作系统的设备。这包括小型设备,如相机、AUTOSAR 设备,以及头戴设备或远程通信设备。它还确保SOME/IP支持信息娱乐域以及车辆中其他域…...
[2023.09.12]: Yew应用开发的第一个hook--use_state
Yew的SSR模式推荐使用function_component组件,并且在function_component中使用hooks。其中,我使用到的第一个hook是use_state。use_state的设计意图与React中的useState非常相似,都是为了保存并修改当前的状态。然而,由于Yew是用R…...
使用Langchain+GPT+向量数据库chromadb 来创建文档对话机器人
使用LangchainGPT向量数据库chromadb 来创建文档对话机器人 一.效果图如下: 二.安装包 pip install langchainpip install chromadbpip install unstructuredpip install jieba三.代码如下 #!/usr/bin/python # -*- coding: UTF-8 -*-import os # 导入os模块&…...
Spring Cloud(Finchley版本)系列教程(一) 服务注册与发现(eureka)
Spring Cloud(Finchley版本)系列教程(一) 服务注册与发现(eureka) 为了更好的浏览体验,欢迎光顾勤奋的凯尔森同学个人博客http://www.huerpu.cc:7000 如有错误恳请大家批评指正,与大家共同学习、一起成长,万分感谢。 一、构建环境 Spring Cloud的构建工具可以使用Maven或Gr…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...
6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙
Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...
