当前位置: 首页 > news >正文

MySQL数据库-02(SQL语言基础)

学习目标:

  1. 掌握 CREATE TABLE、DROP TABLE 语句;
  2. 掌握:增加 INSERT、查询 SELECT、删除 DELETE、修改 UPDATE 表语句。

数据库_02

  • (一)SQL 语言中的注释
  • (二)MySQL 常用数据类型
  • (三)表、字段、记录
  • (四)CREATE TABLE 创建表
  • (五)INSERT 添加数据
    • 一、添加一条记录
    • 二、添加多条记录
      • 格式一:写多条 insert 语句,语句之间用英文分号隔开
      • 格式二:写一条 insert 语句,添加多条记录,数据之间用英文逗号隔开。
      • 格式三:写一条 insert 语句,设置指定字段值。
  • (六)SELECT 简单查询
    • 一、查询所有字段
    • 二、查询指定字段
  • (七)UPDATE 修改数据
  • (八)DELETE 删除表中的记录
  • (九)TRUNCATE 删除表中的记录
  • (十)DELETE 和 TRUNCATE 的区别
  • (十一)DROP TABLE 删除表


(一)SQL 语言中的注释

一、单行注释
格式:--注释内容

select * -- 简单的查询语句
from students;

▲注意:-- 与注释文字之间用空格分离。

二、多行注释
格式:/*注释内容*/

/*
这是一个
多行注释
*/

▲在 navicat 中按 ctrl + /快速注释选中的SQL代码
▲在 navicat 中按 ctrl + shift + / 选中 SQL代码取消注释


(二)MySQL 常用数据类型

  • 整数 int:有符号范围(-2147483648, 2147483648),无符号范围(0, 4294967295),如:int unsigned,代表设置一个无符号的整数。
  • 小整数 tinyint:有符号范围(-128, 127),无符号范围(0,255),如:tinyint unsigned,代表设置一个无符号的小整数。
  • 小数 decimal:如 decimal(5,2) 表示共存5位数,小数占2位,不能超过2位;整数占3位,不能超过3位。
  • 字符串 varchar:如 varchar(3) 表示最多存3个字符,一个中文或一个字母都占一个字符。
  • 日期时间 datetime:范围(1000-01-01 00:00:00~9999-12-31 23:59:59),如’2025-01-01 22:06:59’

(三)表、字段、记录

一、表(table)
表(table),数据库中存储数据的基本单位,表是一个由行和列组成的二维表格结构。

二、字段(field)
表中的列,在数据库中,叫做字段(field)。

三、记录(record)
表中的一行,在数据库中,叫做记录(record)。


(四)CREATE TABLE 创建表

create table 表名(字段名 数据类型;字段名 数据类型...
);

例1:
创建表 a。
字段要求:name(姓名)。
数据类型:varchar(字符串),长度为10。

create table a(name varchar(10)
);

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

例2:
创建表b。
字段要求:
name(姓名),数据类型为 varchar(字符串),长度为10;
height(身高),数据类型为 decimal(小数),一共5位,其中3位整数,2位小数。

create table b(name varchar(10),height decimal(5,2)
);

在这里插入图片描述

例3:
创建表c。
字段要求如下:
id:数据类型为 int(整数);
name:数据类型为 varchar(字符串),长度为20;
age:数据类型为 tinyint unsigned(无符号小整数)。

CREATE TABLE c(id int,name varchar(20),age tinyint unsigned
);

在这里插入图片描述


(五)INSERT 添加数据

SQL语句中,字符串用单引号’ ’ 或双引号 " "引起来,数字可以省略引号。

一、添加一条记录

格式一:所有字段设置值,值的顺序与表中字段的顺序对应。

insert into 表名 values (...);

例1:表 c 插入一条记录,设置所有字段的信息。

insert into c values (0,'亚瑟',22);

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

格式二:部分字段设置值,值的顺序与给出的字段顺序对应。

insert into 表名 (字段1,...) values (1,...)

例2:表 c 插入一条记录,只设置 id 和姓名 name。

insert into c (id,name) values (1,'老夫子')

在这里插入图片描述

在这里插入图片描述

二、添加多条记录

格式一:写多条 insert 语句,语句之间用英文分号隔开

例3:表 c 插入三条记录,写三条 insert 语句,语句之间用分号隔开。

insert into c (id,name,age) values (2,'安琪拉',18);
insert into c (id,name,age) values (3,'甄姬',18);
insert into c values (4,'王昭君',18);

在这里插入图片描述

在这里插入图片描述

格式二:写一条 insert 语句,添加多条记录,数据之间用英文逗号隔开。

insert into 表名 values (...),(...)...;

例4:表 c 插入多条记录,用一条 insert 语句,数据之间用逗号隔开。

insert into c values (5,'云缨',20),(6,'艾琳',20),(7,'夏洛特',20);

在这里插入图片描述

在这里插入图片描述

格式三:写一条 insert 语句,设置指定字段值。

insert into 表名 (字段1,...) values (1,...),(1,...)...;

例5:表 c 插入多条记录,用一条 insert 语句,只设置姓名和年龄。

insert into c (name,age) values ('孙尚香',21),('李元芳',16);

在这里插入图片描述


(六)SELECT 简单查询

一、查询所有字段

select * from 表名;

例1:查询表 c 所有数据

select * from c;

在这里插入图片描述

二、查询指定字段

select 字段1,字段2,... from 表名;

在这里插入图片描述


(七)UPDATE 修改数据

update 表名 set 字段1=1, 字段2=2... where 条件;

例1:修改表c,将所有人的年龄(age字段)改为50。

update c set age=50;

在这里插入图片描述

例2:修改表c,id 为2的记录,姓名(name字段)改为 ‘狄仁杰’,年龄(age字段)改为20。

UPDATE c set name='狄仁杰',age=20 where id=2;

在这里插入图片描述

通过“运行已选择的”查询表c:
在这里插入图片描述


(八)DELETE 删除表中的记录

delete from 表名 where 条件;

例1:删除表 c 中 id 为 6 的记录

delete from c where id=6;

在这里插入图片描述

例2:删除表 c 的所有记录

delete from c;

在这里插入图片描述


(九)TRUNCATE 删除表中的记录

删除表的所有数据,保留表结构

truncate table 表名;

例:删除表 c 的所有数据

truncate table c;

(先给表 c 插入这三条记录)
在这里插入图片描述

在这里插入图片描述


(十)DELETE 和 TRUNCATE 的区别

  • 在速度上,truncate > delete。
  • 如果想删除部分数据用 delete,注意带上 where 子句。
  • 如果想保留表而将所有数据删除,自增长字段恢复从1开始,用 truncate。

(十一)DROP TABLE 删除表

语法1:

drop table 表名;

例1:删除表 a

drop table a;

语法2:

如果表a存在,就删除表a,如果不存在,什么也不做。

drop table if exists 表名;

例2:删除表a

drop table if exists a;

文章转载自:

http://vQb0vUWv.hLnrj.cn
http://pLRxZ7Fk.hLnrj.cn
http://OPXvJNNI.hLnrj.cn
http://Eb7Ztj1x.hLnrj.cn
http://hAYvZmub.hLnrj.cn
http://yqu69xRo.hLnrj.cn
http://WUmtmkYc.hLnrj.cn
http://AwwKvbht.hLnrj.cn
http://17SwTG3N.hLnrj.cn
http://3VSH0HY5.hLnrj.cn
http://8Gse3454.hLnrj.cn
http://hM5qIZft.hLnrj.cn
http://29eP9rR8.hLnrj.cn
http://e9U9osHj.hLnrj.cn
http://iKkMkIC0.hLnrj.cn
http://oS5FrBDJ.hLnrj.cn
http://iYtEUgHW.hLnrj.cn
http://fR0mjuJg.hLnrj.cn
http://2VMweZTI.hLnrj.cn
http://gQee5bVx.hLnrj.cn
http://Z5yGKm2F.hLnrj.cn
http://s1INikNb.hLnrj.cn
http://rMxBhlT3.hLnrj.cn
http://mNLTUnWz.hLnrj.cn
http://uuSaKiMH.hLnrj.cn
http://ORqOOnWE.hLnrj.cn
http://t8cODtGD.hLnrj.cn
http://4dhx3aTH.hLnrj.cn
http://ZAaFiNje.hLnrj.cn
http://LnPB9B5T.hLnrj.cn
http://www.dtcms.com/a/380828.html

相关文章:

  • Java POI实现对docx文件搜索指定文本进行批注/评论
  • Hugging Face NLP课程学习记录 - 3. 微调一个预训练模型
  • Java IO流(字节流和字符流)
  • Python 操作Office的PPT、Word、Excel,同时兼容WPS
  • SW - 剖面视图不显示剖面的显示选项
  • 基于STM32设计的智能蜂箱监测系统设计
  • 将Ansible与这些监控工具集成,实现自动化运维
  • USB3.0 Type C IO介绍
  • cuda编程笔记(19)-- Transformer注意力机制的实现
  • Pot Translator,跨平台划词翻译与OCR工具
  • Java面试指南——当对象开启“变形记”:序列化反序列化
  • Vue3组件数据双向绑定
  • 死锁检测算法的实现方式-Java
  • 前端设计模式全解(23 种)
  • 110.for循环执行顺序
  • 【Git】merge 分类
  • 2025最新超详细FreeRTOS入门教程:第十四章 FreeRTOS空闲任务与钩子函数
  • Parasoft 斩获 AutoSec 2025 优秀汽车 AI 测试创新方案奖
  • MATLAB3-2数据存储-台大郭彦甫
  • Spring Cloud Gateway基础复习
  • 【scikit-learn系列文章】
  • 后端编程开发路径:从入门到精通的系统性探索
  • 单片机esp32 基础调试 联网fetch http.begin(targetUrl);
  • rust语言 (1.88) egui (0.32.2) 学习笔记(逐行注释)(二十八)使用图片控件显示图片
  • 补 json的作用
  • windows 装虚拟机
  • mybatisplus 自定义注解和拦截器动态修改sql,实现数据权限控制
  • bat 批处理实现 FFmpeg 命令拼接 png 为 TextAtlas
  • 01数据结构-B树练习及B+树特点
  • 现代化私有相册rgallery