MySQL - DDL - 库的管理,表的管理,数据类型
库的管理
一、创建库
create database 【if not exists】 库名【 character set 字符集名】;
二、修改库
alter database 库名 character set 字符集名;
三、删除库
drop database 【if exists】 库名;
表的管理
一、创建表 ★
create table 【if not exists】 表名(
字段名 字段类型 【约束】,
字段名 字段类型 【约束】,
。。。
字段名 字段类型 【约束】
)
二、修改表
- 添加列
alter table 表名 add column 列名 类型 【first|after 字段名】;
- 修改列的类型或约束
alter table 表名 modify column 列名 新类型 【新约束】;
- 修改列名
alter table 表名 change column 旧列名 新列名 类型;
- 删除列
alter table 表名 drop column 列名;
- 修改表名
alter table 表名 rename 【to】 新表名;
三、删除表
drop table【if exists】 表名;
四、复制表
- 复制表的结构
create table 表名 like 旧表;
- 复制表的结构+数据
create table 表名
select 查询列表 from 旧表【where 筛选】;
数据类型
一、数值型
- 整型
tinyint | smallint | mediumint | int/integer | bigint |
---|---|---|---|---|
1 | 2 | 3 | 4 | 8 |
特点:
①都可以设置无符号和有符号,默认有符号,通过unsigned设置无符号
②如果超出了范围,会报out or range异常,插入临界值
③长度可以不指定,默认会有一个长度
长度代表显示的最大宽度,如果不够则左边用0填充,但需要搭配zerofill,并且默认变为无符号整型
- 浮点型
定点数:decimal(M,D)
浮点数:
float(M,D)
4
double(M,D)
8
特点:
①M代表整数部位+小数部位的个数,D代表小数部位
②如果超出范围,则报out or range异常,并且插入临界值
③M和D都可以省略,但对于定点数,M默认为10,D默认为0
④如果精度要求较高,则优先考虑使用定点数
二、字符型
char、varchar、binary、varbinary、enum、set、text、blob
char
:固定长度的字符,写法为char(M),最大长度不能超过M,其中M可以省略,默认为1
varchar
:可变长度的字符,写法为varchar(M),最大长度不能超过M,其中M不可以省略
三、日期型
year
年
date
日期
time
时间
datetime
日期+时间 8
timestamp
日期+时间 4 比较容易受时区、语法模式、版本的影响,更能反映当前时区的真实时间
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?