B站MySQL学习笔记:从DDL到DML,全面解析与实战
本资源是一份关于B站尚学堂整理的MySQL学习笔记,详细涵盖了数据库操作语言、数据类型以及数据库DDL语言的相关知识。首先,我们来深入理解这些核心概念: 1. **数据库操作语言(DDL)**: - DDL包括创建(CREATE)、删除(DROP)和修改(ALTER)数据库对象。`CREATE TABLE` 是DDL中最基础的部分,用于创建一个名为`t_user`的表,该表具有字段如`t_id`(用户ID,整数类型,主键且唯一,自动递增),`t_name`(用户姓名,可为空字符串),`t_sex`(性别,字符类型,非空且默认为男),`t_score`(分数,十进制类型,非空默认为0.00),`t_memo`(备注,长文本类型,可为空),`create_user`(创建者,可为空字符串),以及`create_time`(创建时间,日期时间类型,可为空)。 2. **数据类型**: - 提供了多种数据类型的示例: - 整数类型:`tinyint`, `smallint`, `mediumint`, 和 `bigint`,分别表示不同范围的整数。 - 浮点类型:`float` 和 `double`,用于存储带有小数部分的数值。 - 字符类型:`char(1)` 和 `varchar(50)`,前者固定长度,后者可变长度。此外还有`text` 和 `blob`,后者用于存储二进制数据,不包含字符集和排序规则,适合存储非结构化的文本或图片等。 - 日期类型:`date`, `datetime`, 和 `time`,用于存储日期、日期时间或时间信息。 3. **数据库DDL语言的更具体应用**: - 在创建表时,通过`NOT NULL`确保某些字段不能为NULL,`UNIQUE`约束确保字段值的唯一性,`DEFAULT`关键字为字段提供默认值,`COMMENT`用于添加字段的描述性注释。此外,`AUTO_INCREMENT`用于自增主键,`longtext`表示可变长度的文本字段。 这份笔记旨在帮助学习者系统地掌握MySQL的基础知识,从创建表的语法到数据类型的选择,都是实际项目中不可或缺的技能。通过阅读和实践这些内容,可以提升对数据库设计和管理的理解,并在日常开发工作中更加得心应手。
-- /**********************************************一:数据库操作语言**********************************************/
-- DDL: 数据库定义语言:create drop alter
-- DML: 数据库管理语言:insert update delete
-- DQL: 数据库查询语言:select
-- DCL: 数据库控制语言:grant revoke commit
-- /**********************************************二:数据类型**********************************************/
-- 整数类型:tinyint int(11) smallint mediumint bigint
-- 浮点类型: float double decimal(18,2)
-- 字符类型: char(1) varchar(50) text Blob
-- *TEXT和BLOB家族之间仅有的不同是BLOB类型存储的是二进制数据,没有排序规则或字符集,
-- *而TEXT类型有字符集或排序规则。说白了如果要储存中文则选择TEXT。
-- 日期类型: date time datetime timespan
/**********************************************三:数据库DDL语言**********************************************/
-- 【create table】 创建表
CREATE TABLE t_user (
t_id INT NOT NULL PRIMARY KEY UNIQUE KEY AUTO_INCREMENT COMMENT '用户id',
t_name VARCHAR(50) NULL COMMENT '用户姓名',
t_sex char(1) not null default('男') comment '性别',
t_score decimal(10,2) not NULL DEFAULT('0.00') comment '分数',
t_memo longtext null comment '备注',
create_user varchar(50) null comment '创建人',
create_time datetime null comment '创建时间',
modify_time datetime null comment '最后一次修改时间',
modify_user varchar(50) null comment '最后一次修改人',
delete_time datetime null comment '删除时间',
delete_user varchar(50) null comment '删除人',
) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET= utf8;
-- 【alter table add column】 新增一列
alter table t_user add column t_birthday datetime null comment '用户生日';
-- 【alter table modify column】 修改字段的属性
alter table t_user modify column t_birthday datetime not null comment '用户生日';
-- 【alter table change column newcolumn】 修改字段的属性或名字
alter table t_user change t_birthday t_birth datetime not null comment '用户生日';
-- 【alter table drop column】 删除字段
alter table t_user drop t_birth;
-- 【show create table】
show create table t_user;
-- 【rename table to newrtable】
rename table t_user to my_user;
rename table my_user to t_user;
/**********************************************四:数据库DML语言**********************************************/
create table t_student
(
t_sId int not null primary key unique key auto_increment comment '学生主键id' ,
t_id int not NULL DEFAULT(0) COMMENT '用户主键id',
tsg_id int not NULL DEFAULT(0) COMMENT '学生等级主键id',
t_sName varchar(50) null comment '学生姓名',
t_sPhone varchar(20) null comment '学生手机号',
create_user varchar(50) null comment '创建人',
create_time datetime null comment '创建时间',
modify_time datetime null comment '最后一次修改时间',
modify_user varchar(50) null comment '最后一次修改人',
剩余28页未读,继续阅读
- 粉丝: 102
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦