菜鸟之路Day29一一MySQL之DDL
菜鸟之路Day29一一MySQL之DDL
作者:blue
时间:2025.5.2
文章目录
- 菜鸟之路Day29一一MySQL之DDL
- 0.概述
- 1.DDL之数据库操作
- 1.1查询
- 1.2创建
- 1.3使用
- 1.4删除
- 2.DDL之表操作
- 2.1创建表
- 2.2数据类型
- 2.3查询表
- 2.4修改表结构
- 2.5删除表
0.概述
文章内容学习自黑马程序员BV1m84y1w7Tb
何为DDL?
答:DDL即数据定义语言,用来定义数据库对象(数据库,表,字段)
注意单条SQL语句结尾要使用分号来标记
1.DDL之数据库操作
1.1查询
查询所有数据库
show databases;
查询当前正在使用的数据库
select database();
1.2创建
创建数据库
create database [if not exists] 数据库名;
1.3使用
使用某个数据库
use 数据库名;
1.4删除
删除数据库
drop database [if exists] 数据库名;
2.DDL之表操作
2.1创建表
create table 表明{字段1 字段类型 [约束] [comment 字段1注释],……字段n 字段类型 [约束] [comment 字段n注释]
}[comment 表注释];
约束
概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据
目的:保证数据库中数据的正确性,有效性和完整性
约束 | 描述 | 关键字 |
---|---|---|
非空约束 | 限制该字段值不能为null | not null |
唯一约束 | 保证字段的所有数据都是唯一的,不重复的 | unique |
主键约束 | 主键是一行数据的唯一标识,要求非空且唯一 | primary key (auto_increment自增) |
默认约束 | 保存数据时,如果未指定该字段值,则采用默认值 | default |
外键约束 | 让两张表的数据建立连接,保证数据的一致性和完整性 | foreign key |
示例:
create table tb_user(id int primary key auto_increment comment 'id,唯一标识',username varchar(50) not null unique comment '用户名',name varchar(15) not null comment '姓名',age int comment '年龄',gender char(1) default '男' comment '性别'
)comment '用户表';
2.2数据类型
数值类型:
字符串类型:
char(10):最多只能存10个字符,不足10个字符,占用10个字符空间
varchar(10):最多只能存10个字符,不足10个字符,按照实际长度存储
日期时间类型:
2.3查询表
查询当前数据库所有表:show table;查询表结构:desc 表名;查询建表语句:show create table 表名;
2.4修改表结构
添加字段:alter table 表名 add 字段名 类型(长度)[comment 注释][约束];修改字段类型:alter table 表名 modify 字段名 新数据类型(长度);修改字段名和字段类型:alter table 表名 change 旧字段名 新字段名 类型(长度)[comment 注释][约束];删除字段:alter table 表名 drop column 字段名;修改表名: rename table 表名 to 新表名;
示例:
alter table tb_user add qq_num varchar(10) comment 'QQ号码';alter table tb_user modify qq_num varchar(11);alter table tb_user change qq_num qq varchar(12) comment 'QQ号码';alter table tb_user drop column qq;rename table tb_user to user
2.5删除表
删除表:drop table [if exists] 表名;