JAVA小白学习日记Day13

MYSQL基础

创建数据库和表格

CREATE DATABASE easydata;: 创建一个名为 easydata 的数据库。

CREATE TABLE staff: 在当前数据库中创建一个名为 staff 的表格。

字段声明: 定义了表格中的各个字段,包括 id、code、name 和 salary,其中 id 是主键,并且设置为自动递增,code 和 name 为必填字段,salary 是一个存储小数的字段。

重命名表格

ALTER TABLE staff RENAME TO t_staff;

ALTER TABLE t_staff RENAME AS staff;

ALTER TABLE RENAME: 将表格 staff 重命名为 t_staff,然后再将其重新命名为 staff。

设置编码

ALTER TABLE staff CHARACTER SET utf8mb3;

ALTER TABLE CHARACTER SET: 设置表格 staff 的字符集为 utf8mb3,用于支持不同语言字符的存储。

-- 不同的字符占用的空间时不一样的

-- 数字,字母,欧洲部分语言字符占一个字节

-- 中东,阿拉伯语言占两个字节

-- 中文,韩文,日文,东南亚地区字符占三个字节

添加、修改、重新定义和删除列

ALTER TABLE staff ADD COLUMN sex VARCHAR(2);

ALTER TABLE staff MODIFY sex VARCHAR(20) NOT NULL;

ALTER TABLE staff MODIFY sex VARCHAR(20) NOT NULL AFTER name;

ALTER TABLE staff CHANGE sex age int NOT NULL;

ALTER TABLE staff DROP COLUMN age;

ALTER TABLE ADD COLUMN: 在 staff 表格中添加一个 sex 字段。

ALTER TABLE MODIFY: 修改 sex 字段的定义,将其长度修改为 20,并设置为不可为空。

AFTER: 将 sex 字段的位置调整到 name 字段之后。

CHANGE: 将 sex 字段改名为 age,同时修改其类型为 int。

DROP COLUMN: 删除 age 字段。

使用反引号标识符

CREATE TABLE `table` (

`varchar` VARCHAR(20)

);

反引号: 反引号 ( ) 在SQL中用于标识可能与SQL关键字冲突或包含特殊字符的列名或表名,例如在这里用于创建名为 table 的表格,并且有一个列名为 varchar 的字段。

删除表格

DROP TABLE `table`;

DROP TABLE: 删除名为 table 的表格。

sql 复制代码
-- 注释(带空格)
#注释
-- 创建数据库
CREATE DATABASE easydata;
-- 表是数据库中存数据的主题
-- 创建表  表明 t_user user 
CREATE TABLE staff (
-- 声明表中字段
-- 主键,表中数据的唯一的标识,不可重复,不可为null
-- auto_increment在插入数据时,该列的值可以不指定,会自动递增
id int auto_increment PRIMARY KEY,
-- VARCHAR(最大长度) 可变字符串类型
code VARCHAR(20) NOT NULL,
name VARCHAR(20) NOT NULL,
-- 数值一共存储10位,其中两位用来存储小数
salary DECIMAL(10,2)
)
-- 重命名表
ALTER TABLE staff RENAME TO t_staff;
ALTER TABLE t_staff RENAME AS staff;
-- 设置编码
-- mysql8  utf8  mb3和mb4  maxbyte
-- 不同的字符占用的空间时不一样的
-- 数字,字母,欧洲部分语言字符占一个字节
-- 中东,阿拉伯语言占两个字节
-- 中文,韩文,日文,东南亚地区字符占三个字节
ALTER TABLE staff CHARACTER SET utf8mb3;
-- 添加列
ALTER TABLE staff ADD COLUMN sex VARCHAR(2)
-- 重新定义列
ALTER TABLE staff MODIFY sex VARCHAR(20) NOT NULL;
-- 定义列的位置
ALTER TABLE staff MODIFY sex VARCHAR(20) NOT NULL AFTER name ;
-- 重命名列
ALTER TABLE staff CHANGE sex age int NOT NULL;
-- 删除列
ALTER TABLE staff DROP COLUMN age ;
-- 在起 列名,表名时经常会用到一些关键字 name 使用 ``标识
CREATE TABLE `table` (
`varchar` VARCHAR(20)
)
-- 删除表
DROP TABLE `table` ;
相关推荐
爱可生开源社区12 小时前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸17716 小时前
《从零搭建NestJS项目》
数据库·typescript
加号31 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏1 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐1 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再1 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip
tryCbest1 天前
数据库SQL学习
数据库·sql
jnrjian1 天前
ORA-01017 查找机器名 用户名 以及library cache lock 参数含义
数据库·oracle
十月南城1 天前
数据湖技术对比——Iceberg、Hudi、Delta的表格格式与维护策略
大数据·数据库·数据仓库·hive·hadoop·spark
Henry Zhu1231 天前
数据库:并发控制基本概念
服务器·数据库