MySQL数据库基本操作1
文章目录
主要内容
- DDL
- DML
一.DDL
DDL是数据库领域中的一个术语,全称为数据定义语言(Data Definition Language)。DDL用于定义数据库的结构和组织方式,包括创建、修改和删除数据库对象,如表、视图、索引等。
常见的DDL命令包括:
-
CREATE:用于创建数据库对象,如创建表、视图、索引等。
例如:CREATE TABLE students (id INT, name VARCHAR(50)); -
ALTER:用于修改数据库对象的结构,如添加、删除或修改列、约束等。
例如:ALTER TABLE students ADD COLUMN age INT; -
DROP:用于删除数据库对象,如删除表、视图、索引等。
例如:DROP TABLE students; -
TRUNCATE:用于删除表中的所有数据,但保留表结构。
例如:TRUNCATE TABLE students; -
RENAME:用于重命名数据库对象的名称。
例如:RENAME TABLE students TO new_students;
| 功能 | SQL |
|---|---|
| 查看所有数据库 | show databases; |
| 创建数据库 | create database[if not exists] mydb1 [charset=utf8] |
| 切换(选择要操作的)数据库 | use mydb1; |
| 删除数据库 | drop database [if exists] mydb1; |
| 修改数据库编码 | alter database mydb1 character set utf8; |
DDL的用法主要有以下几个方面:
-
创建数据库对象:使用CREATE语句可以创建表、视图、索引等数据库对象,定义其结构和属性。
-
修改数据库对象:使用ALTER语句可以修改数据库对象的结构,如添加、删除或修改列、约束等。
-
删除数据库对象:使用DROP语句可以删除数据库对象,包括表、视图、索引等。
-
重命名数据库对象:使用RENAME语句可以修改数据库对象的名称。
DDL语句通常在数据库的初始化阶段使用,用于创建数据库和表结构。在数据库运行过程中,DDL语句的使用相对较少,主要用于修改数据库结构或删除不需要的对象。
需要注意的是,DDL语句一旦执行,会立即生效并修改数据库的结构,因此在使用DDL语句之前应该谨慎考虑,并确保备份重要数据。
1.创建表
代码如下(示例):
创建表格式
create table [if not exists] 表名 (字段名 1 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 '],字段名 2 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 '],字段名 3 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 ']
)[ 表的一些设置 ];
举个例子:创建表是构建一张空表,指定这个表的名字,这个表有几列,每一列叫什么名字,以及每一列存储的数据类型。
use mydb1;
create table if not exists student(sid int,name varchar(20),gender varchar(20),age int,birth date,address varchar(20),score double
);
2.创建表的类型
数值类型

字符串类型

日期类型

3.其他操作
| 功能 | SQL |
|---|---|
| 查看当前数据库的所有表名称 | show tables; |
| 查看指定某个表的创建语句 | show create table 表名; |
| 查看表结构 | desc 表名 |
| 删除表 | drop table 表名 |
4.修改表结构格式
代码如下(示例):
修改表添加格列:
语法格式
alter table 表名 add 列名 类型 ( 长度 ) [ 约束 ];
例子:
# 为 student 表添加一个新的字段为:系别 dept 类型为 varchar(20)
ALTER TABLE student ADD `dept` VARCHAR(20);
修改列名和类型
语法格式
alter table 表名 change 旧列名 新列名 类型 ( 长度 ) 约束 ;例子:
# 为 student 表的 dept 字段更换为 department varchar(30)
ALTER TABLE student change `dept` department VARCHAR(30);
修改表删除列
语法格式:
alter table 表名 drop 列名 ;例子:
# 删除 student 表中 department 这列
ALTER TABLE student DROP department;
修改表名
语法格式:
rename table 表名 to 新表名 ;例子:
# 将表 student 改名成 stu
rename table `student` to stu;
二.DML
DML(Data Manipulation Language,数据操作语言)是一种用于在关系型数据库中操作数据的语言。它允许用户对数据库中的数据进行查询、插入、更新和删除操作。
DML语言通常包括以下几个主要的操作:
-
查询(SELECT):用于从数据库中检索数据。SELECT语句可以指定要检索的表、列和条件,以及可选的排序和分组规则。
-
插入(INSERT):用于将新的数据行插入到数据库表中。INSERT语句指定要插入的表、要插入的列和相应的值。
-
更新(UPDATE):用于修改数据库表中的现有数据行。UPDATE语句指定要更新的表、要更新的列和相应的新值,以及可选的更新条件。
-
删除(DELETE):用于从数据库表中删除数据行。DELETE语句指定要删除的表和可选的删除条件。
DML语言的使用方法如下:
-
在SQL命令行界面或数据库管理工具中输入DML语句,并执行该语句。执行后,数据库会根据语句的指示进行相应的操作。
-
在应用程序中使用编程语言(如Java、Python等)的数据库连接库,通过调用相应的函数或方法来执行DML语句。
下面是一些常见的DML语句示例:
-
查询语句示例:
SELECT * FROM 表名 WHERE 条件; -
插入语句示例:
INSERT INTO 表名 (列1, 列2, 列3) VALUES (值1, 值2, 值3); -
更新语句示例:
UPDATE 表名 SET 列1=新值1, 列2=新值2 WHERE 条件; -
删除语句示例:
DELETE FROM 表名 WHERE 条件;
需要注意的是,DML语句对数据库中的数据进行操作,因此在使用DML语句时应谨慎,避免误操作或不必要的数据损失。在执行DML语句之前,最好先备份数据库以防止意外情况发生。
1.数据插入
代码如下(示例):
语法格式:
insert into 表(列名1,列名2,列名3...); //向表中插入某些
insert into 表 values ( 值 1, 值 2, 值 3...); // 向表中插入所有列例子:
insert into student(sid,name,gender,age,birth,address,score) values(1001,' 男 ',18,'1996-12-23',' 北京 ',83.5);
insert into student values(1001,' 男 ',18,'1996-12-23',' 北京 ',83.5);
2.数据修改
代码如下(示例):
语法格式:
update 表名 set 字段名=值,字段名=值...;
update 表名 set 字段名 = 值 , 字段名 = 值 ... where 条件 ;例子:
-- 将所有学生的地址修改为重庆
update student set address = ' 重庆’ ;--将id 为 1004 的学生的地址修改为北京
update student set address = ' 北京 ' where id = 1004 ;-- 将id 为 1005 的学生的地址修改为北京,成绩修成绩修改为 100
update student set address = ' 广州 ',score=100 where id = 1005;
3.数据删除
代码如下(示例):
语法格式:
delete from 表名[where 条件];
truncate table 表名 或者 truncate 表名-- 1. 删除 sid 为 1004 的学生数据
delete from student where sid = 1004;
-- 2. 删除表所有数据
delete from student;
-- 3. 清空表数据
truncate table student;
truncate student;注意: delete 和 truncate 原理不同, delete 只删除内容,而 truncate 类似于 drop table ,可以理解为是将整个表删除,然后再创建该表;
总结
以上是今天要讲的内容,学到了MySQL数据库的基本操作,包括DDL,DML。
相关文章:
MySQL数据库基本操作1
文章目录 主要内容一.DDL1.创建表代码如下(示例): 2.创建表的类型3.其他操作4.修改表结构格式代码如下(示例): 二.DML1.数据插入代码如下(示例): 2.数据修改代码如下(示例): 3.数据删…...
Webpack简介及打包演示
Webpack 是一个静态模块打包工具,从入口构建依赖图,打包有关的模块,最后用于展示你的内容 静态模块:编写代码过程中的,html,css, js,图片等固定内容的文件 打包过程,注…...
面向对象设计模式——命令模式
命令设计模式(Command Pattern)是一种行为型设计模式,它的主要目的是将请求或操作封装成一个对象,从而允许参数化客户端对象,队列请求,将请求记录到日志,以及支持可撤销的操作。命令模式将请求的发出者(调用者)与请求的接收者(执行者)解耦,这使得系统更加灵活、可扩…...
selenium测试框架快速搭建(ui自动化测试)
一、介绍 selenium目前主流的web自动化测试框架;支持多种编程语言Java、pythan、go、js等;selenium 提供一系列的api 供我们使用,因此在web测试时我们要点页面中的某一个按钮,那么我们只需要获取页面,然后根据id或者n…...
TypeScript中的类型映射
类型映射 1. 简介 映射就是将一种类型按照映射规则,转成另一种类型,通常用于对象类型。 这里类型B通过A采用属性名索引的写法,完成了类型B的定义 type A {foo: number;bar: number; };type B {[prop in keyof A]: string; };这里复制了一…...
系统平台同一网络下不同设备及进程数据通讯--DDS数据分发服务中间件
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录前言(1)中间件的介绍(2)DDS介绍(3)发布者(4)订阅者(5)idl文件(定义msg结构体)(6)QoS(Quality of Service)策略(7)DDS测试工具介绍(…...
golang小技巧
1/有时需要把json内容返回给前段进行文本编辑json字段,那么最好是能返回格式化后的json,这样对于用户编辑页方便。这时候可以利用json.MarshalIndent(data, "", "\t")来进行格式化,带有缩进的marshal。 2/对holders的填…...
JavaWeb——IDEA操作:Project最终新建module
在project中创建新的module: 创建一个新的module很容易,但是它可能连接不上Tomcat,因此需要修改一些配置: 将以下地址修改为新module的地址...
前端开发技术栈(工具篇):2023深入了解webpack的安装和使用以及核心概念和启动流程(详细) 63.3k stars
目录 Webpack简介 Entry Module Chunk Loader Plugin Output Webpack的启动流程 Webpack的优缺点 Webpack的使用 1. 安装Webpack 2. 创建Webpack配置文件 3. 编写代码 4. 运行Webpack 5. 在HTML中引入打包后的文件 6. 执行编译命令 Webpack其他功能介绍 1. 使…...
[SQL开发笔记]LIKE操作符:在 WHERE 子句中搜索列中的指定模式
一、功能描述: LIKE操作符:用于在 WHERE 子句中搜索列中的指定模式。 二、LIKE操作符语法详解: LIKE 语法 SELECT column1, column2,…FROM table_nameWHERE column LIKE pattern; 参数说明: (1)colum…...
flutter深研
https://www.douyin.com/video/7020336319058627853 关闭系统风扇 在 Windows 操作系统上安装和配置 Flutter 开发环境 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter...
TypeScript中的declare关键字
declare关键字 1. 简介 declare关键字用来告诉编译器,某个类型是存在的,可以在当前文件中使用。 作用:就是让当前文件可以使用其他文件声明的类型。比如,自己的脚本使用外部库定义的函数,编译器会因为不知道外部函数…...
玫瑰红葡萄酒的基本知识
在过去的几年里,玫瑰红葡萄酒越来越受欢迎,但是如果你是饮用玫瑰红葡萄酒的新手,你可能想知道它是如何从其他红葡萄酒或白葡萄酒中脱颖而出的。 玫瑰红具有标志性的粉色,很难归类,那它是更适合放在红酒类还是属于白酒…...
HTTP 协议参考文档
开发者Web协议文档: https://developer.mozilla.org/zh-CN/docs/Web 其中子节点包含 HTTP 协议内容: https://developer.mozilla.org/zh-CN/docs/Web/HTTP 其内容是基于 markdown 编写的,对应源文件在 Github 中,如下…...
Python遍历删除列表元素的一个奇怪bug
假定有一个Python列表,比如[CFFEX.IF, CFFEX.TS,SHFE.FU],现在需要将其中带‘CFFEX’前缀的所有元素都删除。在使用列表推导式一行代码搞定之前,用了一种最朴素的遍历删除方法,结果出现了意想不到的的问题。复盘了下,结…...
Elasticsearch部署中的两大常见问题及其解决方案
随着大数据和实时搜索的日益普及,Elasticsearch已经成为现代应用中不可或缺的工具。但是,像所有软件一样,部署和配置Elasticsearch可能会遇到一些问题。本文将探讨两个我最近遇到的常见问题及其解决方案。 问题描述 1. 主机名解析问题 在启…...
【计网 CDN】计算机网络 CDN(Content Delivery Network)分布式网络架构详解:中科大郑烇老师笔记 (八)
目录 0 引言1 为什么需要分布式的网络架构?2 视频流化服务2.1 多媒体:视频2.2 存储视频的流化(Streaming)服务2.3 流媒体传输协议:DASH2.4 面临挑战:服务器如何向上百万用户同时提供视频流化内容࿱…...
C# 图解教程 第5版 —— 第9章 表达式和运算符
文章目录 9.1 表达式(*)9.2 字面量9.2.1 整数字面量9.2.2 实数字面量9.2.3 字符字面量9.2.4 字符串字面量 9.3 求值顺序9.3.1 优先级9.3.2 结合性 9.4 简单算术运算符9.5 求余运算符9.6 关系比较运算符和相等比较运算符9.7 递增运算符和递减运算符&#…...
TIA博途_Profinet通信故障诊断及常见错误解决方法汇总
TIA博途_Profinet通信故障诊断及常见错误解决方法汇总 1. 在线诊断报硬件组件的用户数据错误,设备组态不支持 解决方法: (1)检查模块终端盖板; (2)检查组态模块与实际组装模块顺序型号是否一致。 2. 网络视图,设备视图界面显示黑色感叹号 解决方法: PLC转离线,下载硬…...
Windows server部署filebeat到kafka
需求:Windows dhcp日志需要实时传输到elk或者其他告警平台。 1、filebeat下载地址:https://www.elastic.co/cn/downloads/beats/filebeat 2、下载后解压后配置filebeat.yml文件, 3、README.md文件中有运行的操作方法:cmd上进入f…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...
毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...
