当前位置: 首页 > news >正文

MySQL学习第一阶段

想了又想还是觉得需要把它先做一个整合,之后会接续把相关的内容进行补充

这是DDL、DML的一点代码

-- 创建数据库
create database db;
-- 使用数据库
use db;
-- 创建学生表
create table students(
id int primary key auto_increment,
name varchar(10),
agender varchar(10),
classroom varchar(10),
born_date varchar(10)
);
-- 添加一班学生
insert into  students values (1, '小黑', '男', '1班', '2004年6月16日');
insert into  students values (2, '李白', '男', '1班', '2004年6月16日');
insert into  students values (3, '王者', '男', '1班', '2004年6月16日');
insert into  students values (4, '韩信', '男', '1班', '2004年6月16日');
insert into  students values (5, '刘邦', '男', '1班', '2004年6月16日');
insert into  students values (6, '闵月', '女', '1班', '2004年6月16日');
insert into  students values (7, '老登', '男', '1班', '2004年6月16日');
-- 添加二班学生
insert into  students values (8, '赔钱虎', '女', '2班', '2004年6月16日');
insert into  students values (9, '子弹头', '男', '2班', '2004年6月16日');
insert into  students values (10, '萧何', '男', '2班', '2004年6月16日');
insert into  students values (11, '张良', '男', '2班', '2004年6月16日');
insert into  students values (12, '项羽', '男', '2班', '2004年6月16日');
-- 创建教室表
create table classroom(
id int primary key
);
-- 添加1班和2班
insert into classroom values (1);
insert into classroom values (2);-- 添加一个外键约束
alter table students add constraint fk foreign key (classroom) references classroom(id);  

 

 

 

数据库 DB

数据库管理 DBMS

SQL

分类

数据库是结构化信息或数据的有序集合,一般以电子形式存储在计算机系统中。

MySQL

Oracle、

microsoft sql server

DDL、DML、DQL、DCL

适用场景

通常由数据库管理系统 (DBMS) 来控制。在现实中,数据、DBMS 及关联应用一起被称为数据库系统,通常简称为数据库。

MySQL 是开源免费,适合中小型企业 Oracle 适用于大型企业,是需要付费的,Microsoft sql server 会存储 Windows 系统的一些数据

DDL:针对数据库和表的一些简单操作,如创建数据库或表

DML:针对数据库表中的数据进行的操作,增删改的操作

DQL:针对数据库表中的数据进行查询,如排序查询、分组查询等

DCL:针对用户的语言,比如设定 root 账号,还有伪账号

DDL

DML

DQL

DCL

区别

对数据库和表

对表数据的修改

对表数据进行的查询

对使用数据库的账户

与 DML 的不同在于在操作表的时候进行的是对表的列等需要定义的属性进行定义/设计

比如添加数据、删除数据等

基础查询、条件查询、排序查询、分组查询、分页查询

分为三级账户,root ,和管理员以及普通账户

约束

事务

多表查询

定义

是指对表中数据进行的限制

数据库的事务是一种机制、一个操作序列,包含了一组数据库操作命令

是指从多张表查询数据

应用场景

需要对某些数据进行保护,以免误删

同时使用,银行账户的转账,事情必须同生共死,确保事务一致性

应对某些内容进行对比

怎么用

设置键进行约束,如外键约束、主键约束、非空约束

三个句子

开始事务、提交事务、结束事务

连接查询:内连接、外连接

子查询

方法

primary key

foreign key

check 检查约束

-- 开启事务start transaction;

// 或者 begin

-- 提交事务commit;

-- 回滚事务rollback;

数据库设计

表关系

定义

数据库设计就是根据业务系统的具体需求,结合我们所选用的 DBMS,为这个业务系统构造出最优的数据存储模型。

建立数据库中的表结构以及表与表之间的关联关系的过程。

表之间的关系

他们两个所关心的问题

有哪些表?表里有哪些字段?表和表之间有什么关系?

只关心表之间有什么关系

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【目标检测】Anaconda+PyTorch配置
  • 图像处理 -- ISP调优(tuning)的步骤整理
  • 2024 HNCTF PWN(hide_flag Rand_file_dockerfile Appetizers TTOCrv_)
  • 以Zookeeper为例 浅谈脑裂与奇数节点问题
  • 东京裸机云多IP服务器全面分析
  • 数学建模学习(2)——决策树
  • OpenCV 安装与基础使用教程(Python)
  • RabbitMQ的学习和模拟实现|GTest测试框架的介绍和简单使用
  • 数据结构代码
  • Git基本使用
  • 3D建模软件--犀牛Rhino for Mac
  • Python应用—浅谈利用opencv去除水印
  • 创建最佳实践创建 XML 站点地图--SEO
  • 谷粒商城实战笔记-42-前端基础-Vue-生命周期和钩子函数
  • 深入浅出WebRTC—ULPFEC
  • 收藏网友的 源程序下载网
  • 78. Subsets
  • Android开源项目规范总结
  • axios 和 cookie 的那些事
  • canvas 绘制双线技巧
  • js如何打印object对象
  • js学习笔记
  • k个最大的数及变种小结
  • LeetCode算法系列_0891_子序列宽度之和
  • MYSQL 的 IF 函数
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • PaddlePaddle-GitHub的正确打开姿势
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • Python学习之路16-使用API
  • Vue.js 移动端适配之 vw 解决方案
  • vuex 学习笔记 01
  • 笨办法学C 练习34:动态数组
  • 给Prometheus造假数据的方法
  • 京东美团研发面经
  • 判断客户端类型,Android,iOS,PC
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • #、%和$符号在OGNL表达式中经常出现
  • #if等命令的学习
  • $GOPATH/go.mod exists but should not goland
  • (27)4.8 习题课
  • (BAT向)Java岗常问高频面试汇总:MyBatis 微服务 Spring 分布式 MySQL等(1)
  • (动态规划)5. 最长回文子串 java解决
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (原创)可支持最大高度的NestedScrollView
  • (转)负载均衡,回话保持,cookie
  • (转载)Google Chrome调试JS
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET MAUI Sqlite程序应用-数据库配置(一)
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .Net多线程Threading相关详解
  • .net反编译的九款神器
  • .Net中间语言BeforeFieldInit