【MySQL】(二)SQL 基础操作之 DDL 数据定义语言

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【MySQL】(二)SQL 基础操作之 DDL 数据定义语言

DDL


数据定义语言,用于操作数据库对象的结构


数据库的创建和销毁

# 创建数据库
create database [if not exists] bd1906;
#销毁数据库
drop database [if exists] bd1906;


表的创建,修改和销毁

数值类型:
  整数:
    int  / bigint
  浮点数:
    float(10,2): 长度是10,小数点后的位数是2
    double(16,4): 长度为16,小数点后的位数是4
    decimal(m,n): 金额等数据时必须使用decimal
字符串类型:必须指明长度
    char(n): 固定长度
    varchar(n): 可变长度
日期类型:
    date: 日期
    time: 时间
    datetime: 日期和时间 
    timestamp: 时间戳 
其他类型:
    text: 文本类型
    blob: 二进制数据类型
    enum() / set()  / json()


数据完整性


数据的准确性和可靠性


实体完整性


实体指的就是记录,就是保证记录是准确的,不重复的


主键约束: 唯一而且不能为空(primary key)
/

# 场景1: 创建表的同时添加约束
create table student(
  sid int primary key,
  sname varchar(20) 
);
create table student(
  sid int,
  sname varchar(20),
  primary key(sid)  
);
# 场景2: 表已经存在(主键字段绝对不能存在重复的数据)
alter table stu add constraint PK_ID primary key (sid);
# 注意:
 1.每张表必须有主键,但是有且只能有一个,允许有联合主键
 2.主键字段一般数据类型和长度尽可能小
 3.主键字段不要使用业务字段

唯一约束: 字段的值必须唯一

create table student(
  card char(18) unique
)
alter table stu add constraint UQ_CARD unique (card);


主键自增:


auto_increment: 默认从1开始每次增加1


域完整性


域:字段


类型约束


  • not null:非空约束
  • default: 默认值


引用完整性


其中一张表的字段取值需要依赖于另一张表


外键约束


alter table emp add constraint FK_DEPTNO foreign key(deptno) references dept(deptno);


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
22天前
|
SQL 存储 缓存
SQL Server 数据太多如何优化
11种优化方案供你参考,优化 SQL Server 数据库性能得从多个方面着手,包括硬件配置、数据库结构、查询优化、索引管理、分区分表、并行处理等。通过合理的索引、查询优化、数据分区等技术,可以在数据量增大时保持较好的性能。同时,定期进行数据库维护和清理,保证数据库高效运行。
|
1月前
|
SQL 移动开发 Oracle
SQL语句实现查询连续六天数据的方法与技巧
在数据库查询中,有时需要筛选出符合特定时间连续性条件的数据记录
|
1月前
|
SQL 运维 关系型数据库
MySQL 运维 SQL 备忘
MySQL 运维 SQL 备忘录
47 1
|
26天前
|
SQL 关系型数据库 MySQL
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
36 0
|
26天前
|
SQL 关系型数据库 MySQL
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
31 0
|
1月前
|
SQL 存储 关系型数据库
mysql 数据库空间统计sql
mysql 数据库空间统计sql
47 0
|
1月前
|
SQL 存储 关系型数据库
mysql SQL必知语法
本文详细介绍了MySQLSQL的基本语法,包括SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY等关键字的使用,以及数据库操作如创建、删除表,数据类型,插入、查询、过滤、排序、连接和汇总数据的方法。通过学习这些内容,读者将能更好地管理和操
20 0
|
2月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
4月前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
115 13
|
4月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。

热门文章

最新文章

下一篇
无影云桌面