JavaWeb 课堂笔记 —— 09 MySQL 概述 + DDL

news2025/4/17 14:37:21

本系列为笔者学习JavaWeb的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)》,章节分布参考视频教程,为同样学习JavaWeb系列课程的同学们提供参考。

01 企业开发

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

02 数据模型

关系型数据库(RDBMS)是建立在关系模型基础上,由多张相互连接的二维表(行+列)组成的数据库,其格式统一,使用SQL语言操作。

在这里插入图片描述

在这里插入图片描述

03 SQL 简介

SQL是一门操作关系型数据库的编程语言,其定义操作所有关系型数据库的统一标准。

SQL可单行/多行,可使用空格/缩进,以分号结尾,不区分大小写 ,注释为-- #

SQL语句通常被分为四大类:

在这里插入图片描述

在这里插入图片描述

04 DDL 基础操作

DDLData Defination Language,即数据定义语言,定义数据库对象和表格。

在这里插入图片描述

查询:

在这里插入图片描述

在这里插入图片描述

创建:

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

删除:

在这里插入图片描述

在这里插入图片描述

使用:

在这里插入图片描述

05 DataGrip

DataGripJetBrains旗下的一款数据库管理工具,是管理和开发MySQL、Oracle、PostgreSQL的理想解决方案。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

06 DDL 表操作

创建:

create table MingJiao(
    id int comment 'ID 唯一标识',
    username varchar(20) comment '用户名',
    name varchar(10) comment '姓名',
    age int comment '年龄',
    gender char(1) comment '性别'
) comment '用户表';

约束:约束是作用于表中字段上的规则,用于限制存储在表中的数据,以保证数据库中数据的正确性,有效性和完整性。

在这里插入图片描述

create table MingJiao(
    id int primary key comment 'ID 唯一标识',
    username varchar(20) not null unique comment '用户名',
    name varchar(10) not null comment '姓名',
    age int comment '年龄',
    gender char(1) default '男' comment '性别'
) comment '用户表';

数据类型:数值类型、字符串类型、日期事件类型

类型大小(byte)备注
tinyint1
smallint2
mediumint3
int4
bigint8
float4float(5,2):5表示整个数字长度,2 表示小数位个数
double8double(5,2):5表示整个数字长度,2 表示小数位个数
decimaldecimal(5,2):5表示整个数字长度,2 表示小数位个数
类型大小描述
char0-255 bytes定长字符串
varchar0-65535 bytes变长字符串
tinyblob0-255 bytes不超过255个字符的二进制数据
tinytext0-255 bytes短文本字符串
blob0-65 535 bytes二进制形式的长文本数据
text0-65 535 bytes长文本数据
mediumblob0-16 777 215 bytes二进制形式的中等长度文本数据
mediumtext0-16 777 215 bytes中等长度文本数据
longblob0-4 294 967 295 bytes二进制形式的极大文本数据
longtext0-4 294 967 295 bytes极大文本数据

char(10): 最多只能存10个字符,不足10个字符,占用10个字符空间。

varchar(10): 最多只能存10个字符,不足10个字符, 按照实际长度存储。

date3格式描述
time3YYYY-MM-DD日期值
year1HH:MM:SS时间值或持续时间
datetime8YYYY年份值
timestamp4YYYY-MM-DD HH:MM:SS混合日期和时间值

案例:根据页面原型/需求创建表(数据类型、长度、约束)

在这里插入图片描述

在这里插入图片描述

查询:

在这里插入图片描述

修改:

在这里插入图片描述

在这里插入图片描述

删除:

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

echarts 图表

echart快速上手 快速上手 - 使用手册 - Apache EChartshttps://echarts.apache.org/handbook/zh/get-started/

无线通信网

1.2.4G相邻信道间有干扰,5G相邻信道几乎无干扰 2.2.4G频段的优点是信号强,衰减小,穿墙强,覆盖距离远;缺点是带宽较窄,速度较慢,干扰较大。 5G频段的优点是带宽较宽,速度较快&#…

数据结构:哈希表 | C++中的set与map

上回说到,红黑树是提升了动态数据集中频繁插入或删除操作的性能。而哈希表(Hash Table),则是解决了传统数组或链表查找数据必须要遍历的缺点。 哈希表 哈希表的特点就是能够让数据通过哈希函数存到表中,哈希函数能够将数据处理为表中位置的索…

容器初始化Spring Boot项目原理,即web项目(war)包涉及相关类对比详解

以下是关于 SpringBootServletInitializer、ServletContainerInitializer、SpringServletContainerInitializer、WebApplicationInitializer 和 ServletInitializer 的对比详解及总结表格: 1. 核心对比详解 (1) SpringBootServletInitializer 作用: S…

[ctfshow web入门] web29

前置知识 eval: 把字符串按照 PHP 代码来执行,例如eval(“echo 1;”);这个函数拥有回显 system:使php程序执行系统命令,例如,system(“ls”);就是查看当前目录,这个拥有回显 preg_match:查找字符串是否匹配…

5.JVM-G1垃圾回收器

一、什么是G1 二、G1的三种垃圾回收方式 region默认2048 三、YGC的过程(Step1) 3.1相关代码 public class YGC1 {/*-Xmx128M -XX:UseG1GC -XX:PrintGCTimeStamps -XX:PrintGCDetails -XX:UnlockExperimentalVMOptions -XX:G1LogLevelfinest128m5% 60%6.4M 75M*/private stati…

Odrive0.5.1-FOC电机控制 arm_cos_f32.cpp arm_sin_f32.cpp代码实现(一)

01 查表法 在 our_arm_cos_f32 函数中,查表(Look-Up Table, LUT) 的核心是 预计算的正弦值表 sinTable_f32,通过巧妙利用余弦与正弦的相位关系实现快速余弦计算。以下是详细解析: 1. 查的是什么表? (1) 表内…

机械臂只有位置信息是否可以进行手眼标定?

平常我在做手眼标定时,一般都是通过OpenCV的cv::calibrateHandEye函数进行求解,需要输入多组不同的机械臂位姿。今天遇到了一款舵机机器人,只能获取位置,得不到姿态信息,想着那就把姿态都设为0,结果求不出来…

Python 数据分析01 环境搭建教程

Python 数据分析01 环境搭建教程 一、安装 Python 环境 访问 Python 官方网站 Python 官网,选择适合你操作系统的 Python 版本进行下载。下载完成后,运行安装程序。在安装过程中,建议选择“Add Python to PATH”选项,这样可以在…

使用 Visual Studio 2022 (VS2022) 编译 FreeCAD 1.0.0 的详细教程

一、环境准备 官方教程:在 Windows 上编译 - FreeCAD Documentation Windows 10/11(推荐) git vs2022 cmake 3.26.4 Doxygen1.12 二、获取源码与依赖 版本关系 打开Git Bash或CMD,执行以下命令 git clone --recurse-sub…

蓝桥杯单片机频率

long int Freq; unsigned int Timer_1000Ms; 加上 TMOD | 0x05; void Timer0Init(void) //0毫秒12.000MHz {AUXR & 0x7F; //定时器时钟12T模式TMOD & 0xF0; //设置定时器模式TMOD | 0x05;TL0 0x00; //设置定时初值TH0 0x00; //设置定时初值TF0 0; //清除TF0标…

遵循IEC 62304:构建安全可靠的医疗器械软件

目录 一、IEC 62304 标准概述 1. 标准定位与适用范围 二、核心内容与要求 1. 软件安全等级(Software Safety Classification) (1)分级标准 (2)分级依据 (3)验证要求 2. 软件…

互联网三高-数据库高并发之分库分表

1 数据库概述 1.1 数据库本身的瓶颈 ① 连接数 MySQL默认最大连接数为100,允许的最大连接数为16384 ② 单表海量数据查询性能 单表最好500w左右,最大警戒线800w ③ 单数据库并发压力问题 MySQL QPS:1500左右/秒 ④ 系统磁盘IO、CPU瓶颈 1.2 数…

UE5 在UE中创建骨骼动画

文章目录 创建动画的三种方式修改骨骼动画 创建动画的三种方式 方法一 打开一个已有的动画,左上角“创建资产/创建动画/参考姿势” 这将创建一个默认的A字形的骨骼,不建议这么做 方法二 打开一个已有的动画,左上角“创建资产/创建动画/当前…

[ctfshow web入门] web38

信息收集 过滤多了php和file if(isset($_GET[c])){$c $_GET[c];if(!preg_match("/flag|php|file/i", $c)){include($c);echo $flag;}}else{highlight_file(__FILE__); }解题 更多解法参考 [ctfshow web入门] web37 我们选个最简单的。但是因为php被过滤了我们改用…

汽车CAN总线采样点和采样率详解

写在前面 本篇文章主要讲解在汽车电子中CAN总线采样率的相关知识点,内容涉及CAN波特率、采样点、时间份额、同步跳转宽度以及采样率的计算。 若有相关问题,欢迎评论沟通,共同进步。(*^▽^*) 1、CAN波特率 CAN波特率常规分为250kbps和500kbps,本文章主要以这两个波特率为…

Maven error:Could not transfer artifact

问题描述 当项目从私有仓库下载依赖时,Maven 报错,无法从远程仓库下载指定的依赖包,错误信息如下: Could not transfer artifact com.ding.abcd:zabk-java:pom from/to releases (http://192.1122.101/repory/mavenleases/): 此…

pytorch 反向传播

文章目录 概念计算图自动求导的两种模式 自动求导-代码标量的反向传播非标量变量的反向传播将某些计算移动到计算图之外 概念 核心:链式法则 深度学习框架通过自动计算导数(自动微分)来加快求导。 实践中,根据涉及号的模型,系统会构建一个计…

WindowsPE文件格式入门06.手写最小PE

https://bpsend.net/thread-346-1-1.html 实现目标 实现目标:手写实现不大于 200 Byte大小的PE文件(又名:畸形PE/变形PE),要求MessageBox弹框显示一个字符串。实现要点:充分利用空间,在保证遵…

并发编程--互斥锁与读写锁

并发编程–互斥锁与读写锁 文章目录 并发编程--互斥锁与读写锁1. 基本概念2. 互斥锁2.1 基本逻辑2.2 函数接口2.3示例代码12.4示例代码2 3. 读写锁3.1 基本逻辑3.2示例代码 1. 基本概念 互斥与同步是最基本的逻辑概念: 互斥指的是控制两个进度使之互相排斥&#x…