数据库基础

数据库系统的组成:由数据库,数据库管理软件,数据库管理员DBA,支持数据库系统的硬件和软件组成,其中数据库管理员是对数据库进行规划、设计、维护、和监视的专业管理人员,在数据库系统中起着非常重要的作用

数据库系统的三级模式解构分为:

内模式(唯一):主要描述数据库系统的物理结构和储存方式,是数据库内部的表达方式。

模式(唯一):主要描述数据库系统的逻辑结构和特征进行描述,是说有用户的公共数据视图。

外模式:数据库用户能够看见的局部数据的逻辑结构和特征的描述,是保证数据库的数据安全性的有力措施。

为了能够在数据库内部实现这三个模式抽象层次的联系和转换,数据库管理系统在三级模式中提供了两层映射。1 外模式/模式映射(保证数据与程序的逻辑独立性)  2 模式/内模式映射(保证了数据与程序的物理独立性)

关系数据库:是支持关系模型的数据库,关系模型由 1关系数据结构 2关系操作集合 3完整性约束

数据库的规范化管理:数据库的三范式(主要目的减少数据longyu,保证输入输出数据的一致性与正确性,保证数据与应用程序之间的高独立性)

1NF:在一个关系中,消除重复字段,且各个字段都是最小的逻辑储存单位(例如:字段地址可以分为省份,市,区,分到最小的逻辑储存单位)

2NF:关系模型中属于第一范式,关系中每一个非主键关键字完全依赖于主键,不能部分依赖主关键字。

3NF:关系模型中属于第一范式,关系中每一个非主键关键字只依赖主键。

数据库中实体和实体之间的关系分类:

一对一的关系:略(大部分相关信息都在一个表中)

一对多的关系:例如一个老师对应有在教导多个学生

多对多的关系:多对多关系的建立是依靠三个表(称作连接表)实现的,连接表包含相关的两个表的主键列,然后从两个相关表的列分别创建与连接表中的匹配列关系。

SQL执行顺序:SELECT DISTINCT TOP<num>

       <select list>

       FROM [left table]

       <join type>JOIN<right table>

            ON <join约束>

       WHERE <where 约束>

       GROUP BY<group by list>

       WHIT<cube\rollup>

       HAVING<having约束>

       ORDER BY <order by约束>

-----------------------------1到11为执行的顺序

SQL学习笔记之 数据库基础(一)的更多相关文章

  1. MySQL学习笔记01_数据库基础知识

    01_1 mysql数据库启动与停止 以<管理员权限>启动cmd: 输入net stop mysql停止mysql服务: 输入net start mysql启动mysql服务: 输入mys ...

  2. MySQL学习笔记(一)—数据库基础

    一.数据库概述 1.数据库的组织结构      (1)数据库就是用来存放信息的仓库.      (2)数据库里的数据集合都存放在数据表(table)里.      (3)数据表由数据行(row)和数据 ...

  3. SQL学习笔记——创建数据库显示:文件激活错误,物理文件名不存在>>解决方案

    今天在创建数据库时,跟着老师一步一步的操作创建成功,但出于在厌恶冗长的数据库存储路径,于是,擅自更改了数据filename,让他保存在电脑桌面新建的文件夹,可是一执行就报错了. 老师源码: 1 cre ...

  4. Mysql数据库学习笔记之数据库索引(index)

    什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...

  5. MongoDB学习笔记:MongoDB 数据库的命名、设计规范

    MongoDB学习笔记:MongoDB 数据库的命名.设计规范     第一部分,我们先说命名规范. 文档 设计约束 UTF-8 字符 不能包含 \0 字符(空字符),这个字符标识建的结尾 . 和 $ ...

  6. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  7. Java学习笔记:语言基础

    Java学习笔记:语言基础 2014-1-31   最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...

  8. ORALCE PL/SQL学习笔记

    ORALCE  PL/SQL学习笔记 详情见自己电脑的备份数据资料

  9. 卷积神经网络(CNN)学习笔记1:基础入门

    卷积神经网络(CNN)学习笔记1:基础入门 Posted on 2016-03-01   |   In Machine Learning  |   9 Comments  |   14935  Vie ...

随机推荐

  1. jquery-uploadfile的使用(多文件异步上传)

    需求 在页面端可以在页面不刷新情况下上传多个有大小限制的word文件,并返回文件保存的路径,同时可以删除误上传的文件. 准备 下载该插件 该插件依赖jquery1.9.1版本(其它不清楚)*在jsp页 ...

  2. IDEA下新建Vue项目

    1.首先需要安装nodeJS,并配置全局环境变量. 2.在IDEA中新建一个空的project 3.在setting中配置JavaScript的语言版本为6 在file types的html中添加.* ...

  3. 【Gradle】Gradle构建脚本基础

    Gradle构建脚本基础 Settings文件 在Gradle中,定义了一个设置文件,用于初始化以及工程树的配置.设置文件的默认名为settings.gradle,放在根工程目录下. 设置文件大多数的 ...

  4. element-ui修改表单自带验证的样式

    1.比如重写在表单自带验证的样式 .el-form-item__error是对应是的文字的类名,图标我是通过伪元素插进去的 下面是伪元素代码 基本上要重写样式的,到控制台看样式名,因为是封装的,所以有 ...

  5. Mysql—常见查询命令

    查询mysql的日志 -- 查找错误日志文件路径 mysql> show variables like "log_error"; -- 查找通用日志文件路径 mysql> ...

  6. [PHP] 新版本PHP7.4与新版本MySQL8认证问题

    mysql8的默认密码加密方式是caching_sha2_password,PHP7.4连接mysql的加密方式也为caching_sha2_password,这个地方要注意. 当为了兼容旧版的客户端 ...

  7. Pwnable-leg

    Download : http://pwnable.kr/bin/leg.c Download :http://pwnable.kr/bin/leg.asm 友链 https://blog.csdn. ...

  8. 【转】Redis面试题

    1.谈谈Redis的主从复制流程 有几个重点:主节点负责写,从节点负责读,slave node 主要用来进行横向扩容,做读写分离,扩容的 slave node 可以提高读的吞吐量.必须开启 maste ...

  9. [C6] Andrew Ng - Convolutional Neural Networks

    About this Course This course will teach you how to build convolutional neural networks and apply it ...

  10. java.net 基本测试

    java.net 基本测试 包 java.net java.net.ssl 类 java.net.URL 测试类 package com.mozq.boot.kuayu01.demo; import ...