MySql学习(二)

表结构操作(CURD)

创建
sql 复制代码
create table 表名称(
字段1 类型(长度) 约束, 
字段2 类型(长度) 约束, 
字段3 类型(长度) 约束
);

创建表的时候,后面用小括号,后面分号。

编写字段,字段与字段之间使用逗号,最后一个子段不能使用逗号。

如果声明字符串数据的类型,长度是必须指定的。

如果不指定数据的长度,有默认值的。int类型的默认长度是1

创建一张表结构(员工表练习)
sql 复制代码
create table employee(
id int,
name varchar(30), 
gender char(5), 
birthday date, 
entry_date date, 
job varchar(50), 
salary double, 
resume text
);
删除和查看表
sql 复制代码
删除表语法:drop table 表名;
sql 复制代码
查看标签
*	desc 表名;                ‐‐ 查询表的信息
*	show tables;              ‐‐ 查看当前数据库中所有的标签
*	show create table 表名;    ‐‐ 查看表的创建的信息

修改表
sql 复制代码
语法
*	alter table 表名 add 新列名 类型(长度) 约束;	‐‐ 添加列
*	alter table 表名 drop 列名;	‐‐ 删除列
*	alter table 表名 modify 列名 类型(长度) 约束;	‐‐ 修改列的类型或者约束
*	alter table 表名 change 旧列名 新列名 类型(长度) 约束;	‐‐ 修改列名
*	rename table 表名 to 新表名;	‐‐ 修改表的名称
*	alter table 表 名 character set utf8;	‐‐ 修改表的字符集
sql 复制代码
在上面员工表的基本上增加一个image列。
alter table employee add image varchar(50);
修改job列,使其长度为60。
alter table employee modify job varchar(60);
删除gender列。
alter table employee drop gender;
表名改为user。
rename table employee to user;
修改表的字符集为utf8
alter table user character set utf8;
列名name修改为username
alter table user change name username varchar(30);

数据库的数据类型(重点)

字符串型

VARCHAR:长度是可变的,CHAR:长度是不可变的

大数据类型

BLOB:字节(电影,mp3),TEXT:字符(文本的内容)

数值型

TINYINT,SMALLINT,INT,BIGINT,FLOAT,DOUBLE

逻辑性

BIT:在Java中是true或者false,在数据库bit类型(1或者0)

日期型

DATE:只包含日期(年月日)

TIME:只包含时间(时分秒)

DATETIME:包含日期和时间。如果插入数据的时候,字符值为空,字段的值就是空了。

TIMESTAMP:包含日期和时间。如果插入数据的时候,设置字段的值为空,默认获取当前的系统的时候, 把时间保存到字段中。

相关推荐
云技纵横2 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二2 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
小猿姐2 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
云技纵横3 天前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神3 天前
三、用户与权限管理
数据库·mysql
摇滚侠4 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
通信小呆呆4 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick4 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee4 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale