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` ;
相关推荐
云和数据.ChenGuang2 分钟前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys30 分钟前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi31 分钟前
SQL注入的那些面试题总结
数据库·sql
建投数据1 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi2 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀3 小时前
Redis梳理
数据库·redis·缓存
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天3 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺3 小时前
分布式系统架构:服务容错
数据库·架构
独行soc4 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘