菜鸟之路Day29一一MySQL之DDL

菜鸟之路Day29一一MySQL之DDL

作者:blue

时间:2025.5.2

文章目录

0.概述

文章内容学习自黑马程序员BV1m84y1w7Tb

何为DDL?

答:DDL即数据定义语言,用来定义数据库对象(数据库,表,字段)

注意单条SQL语句结尾要使用分号来标记

1.DDL之数据库操作

1.1查询

查询所有数据库

sql 复制代码
show databases;

查询当前正在使用的数据库

sql 复制代码
select database();

1.2创建

创建数据库

sql 复制代码
create database [if not exists] 数据库名;

1.3使用

使用某个数据库

sql 复制代码
use 数据库名;

1.4删除

删除数据库

sql 复制代码
drop database [if exists] 数据库名; 

2.DDL之表操作

2.1创建表

sql 复制代码
create table 表明{
	字段1 字段类型 [约束] [comment 字段1注释],
	......
	字段n 字段类型 [约束] [comment 字段n注释]
}[comment 表注释];

约束

概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据

目的:保证数据库中数据的正确性,有效性和完整性

约束 描述 关键字
非空约束 限制该字段值不能为null not null
唯一约束 保证字段的所有数据都是唯一的,不重复的 unique
主键约束 主键是一行数据的唯一标识,要求非空且唯一 primary key (auto_increment自增)
默认约束 保存数据时,如果未指定该字段值,则采用默认值 default
外键约束 让两张表的数据建立连接,保证数据的一致性和完整性 foreign key

示例:

sql 复制代码
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查询表

sql 复制代码
查询当前数据库所有表:show table;

查询表结构:desc 表名;

查询建表语句:show create table 表名;

2.4修改表结构

sql 复制代码
添加字段:alter table 表名 add 字段名 类型(长度)[comment 注释][约束];

修改字段类型:alter table 表名 modify 字段名 新数据类型(长度);

修改字段名和字段类型:alter table 表名 change 旧字段名 新字段名 类型(长度)[comment 注释][约束];

删除字段:alter table 表名 drop column 字段名;

修改表名: rename table 表名 to 新表名;

示例:

sql 复制代码
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删除表

sql 复制代码
删除表:drop table [if exists] 表名;
相关推荐
一 乐33 分钟前
医疗管理|医院医疗管理系统|基于springboot+vue医疗管理系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·医疗管理系统
TDengine (老段)1 小时前
从细胞工厂到智能制造:Extracellular 用 TDengine 打通数据生命线
java·大数据·数据库·科技·制造·时序数据库·tdengine
Hello.Reader3 小时前
基于 Flink CDC 的 MySQL → Kafka Streaming ELT 实战
mysql·flink·kafka
L.EscaRC4 小时前
浅析MySQL InnoDB存储引擎的MVCC实现原理
数据库·mysql
热爱运维的小七5 小时前
MongoDB 内存管理避坑指南:解决高占用、页错误等核心问题,让数据库性能翻倍
数据库·mongodb
冉冰学姐6 小时前
SSM公办小学网络报名系统f3d3p(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·ssm 框架·公办小学网络报名系统·教育信息化
叡鳍7 小时前
hive---HQL查询
数据库
vortex58 小时前
谷歌黑客语法挖掘 SQL 注入漏洞
android·数据库·sql
九河云8 小时前
软件开发平台 DevCloud
运维·服务器·数据库·科技·华为云
wind_one19 小时前
7.基础--SQL--DDL-数据类型及案例
数据库·sql