
数据库
斯坦福大学数据库课程学习笔记
shendezhuti
本科湖南大学电子科学与技术学士学位 正攻读美国乔治华盛顿大学计算机硕士学位
展开
-
StanfordDB class自学笔记 (16) 心得体会
总的来说这门Stanford Database 入门课还是不错的,自己自学学到了很多东西。不过练习题做的不是很好,很多题目都是看别人的答案才做出来。并且在最后recusion的部分搞的不是很懂,等到以后实际要用到了,再好好地去钻研一下!...原创 2019-07-15 16:01:46 · 113 阅读 · 0 评论 -
StanfordDB class自学笔记 (15) Recursion
Basic Recursive WITH Statement - IntroductionSQL不是一种图灵完整的语言-即SQL不能做所有的计算Simple, convenient, declarative Expressive enough for most database queries But basic SQL can’t express unbounded comp...原创 2019-07-15 15:59:59 · 138 阅读 · 0 评论 -
StanfordDB class自学笔记 (14) On-Line Analytical Processing
Introduction to OLAP数据库活动类型被分为两类OLTP – Online Transaction Processing– Short transactions – Simple queries – Touch small portions of data – Frequent updatesOLAP – Online Analytical Process...原创 2019-07-15 13:56:00 · 211 阅读 · 0 评论 -
StanfordDB class自学笔记 (13) Views and Authorization
Three-level vision of database 三层数据库Physical – Conceptual – Logical之前讲解数据库的时候 用户和程序主要在conceptual level 实际上用户和程序也可以在logical level!为什么使用viewHide some data from some users 对一些用户隐藏数据 Make som...原创 2019-07-15 01:18:41 · 166 阅读 · 0 评论 -
StanfordDB class自学笔记 (12) Constraints and Triggers
constraints 和 trigger 是为 relational database提供服务,是SQL的标准,系统变化可以很多。(Integrity)Constraints用来限制正当的数据库状态,例子如下为什么要用constraint检查Data-entry errors (insert时) correctness criteria (update时) enfo...原创 2019-07-14 17:31:55 · 259 阅读 · 0 评论 -
StanfordDB class自学笔记 (11) Indexes and Transactions
Indexes提高数据库性能的原始机制 持续的数据结构,存在数据中 有很多有趣的实现问题下面说的主要是注重在用户、应用层用处具体的来说,用户访问的不是index,使用的是query索引机制通过查询语句返回的是index索引潜在的数据结构有两种,平衡树或者哈希表 其中哈希表的使用情况比较单一,而平衡树的使用情况适合更多情况,如上图!许多DBMS自动构建索引 ...原创 2019-07-14 00:15:58 · 186 阅读 · 0 评论 -
StanfordDB class自学笔记 (10) Unified Modeling Language
UML Data Modeling如果我们创建一个数据库在关系系统中数据库将由关系组成。一般我们不是直接设计关系!数据库设计师,我们会在这里画出来的,使用更高级别的设计模型。然后那个模型就会出现通过类似转换器,这个通常可以是自动的将翻译的过程更高级别的模型进入由数据库系统实现的关系。高级别数据库设计E/R模型使用了非常久的时间,也非常的流行,不过UML正在兴起! 两者都是图形...原创 2019-07-13 00:51:57 · 341 阅读 · 1 评论 -
StanfordDB class自学笔记 (九) Relational Design Theory 关系设计理论
设计数据库设计数据库通常有好几种设计方法,有一些会比其他的要好,那么要怎么选择呢?先看一个例子 比如要设计下面的大学申请系统如果我们只有一个apply表的话,会造成一些我们不想要的情况这样就会出现重复的信息,造成了冗余 更新时候的异常,比如我们只想更新一个tuple,但是更新了我们指定attribute的tuple(这是因为上面重复信息的冗余) 删除时候的异常,同理我们想删...原创 2019-07-11 20:52:55 · 589 阅读 · 0 评论 -
StanfordDB class自学笔记 (8) Querying XML
查询XML没有查询relational model那样成熟 XML相对比较新 没有潜在的关系代数发展历程XPath XSLT XQueryXPath= expressions + Conditions把XML想象成一棵树的结构XQuery表达语言(成分) 每个表达式都对一些元素序列进行操作或者返回一些元素序列 XPath是一种表达式XQuery表达式...原创 2019-07-11 17:31:53 · 183 阅读 · 0 评论 -
StanfordDB class自学笔记 (7) SQL
SQL简介SQL类似relational model 已经用了非常久的年份,是一个标准的语言。是申明性的语言,基于关系代数。关于SQL术语SQL语句下面所有的sql语句基于的relational model都是自学笔记(6)中的大学申请系统基本selectTable variabletable variable主要影响的是from 语句后面,相当于是对ta...原创 2019-07-11 14:10:27 · 156 阅读 · 0 评论 -
StanfordDB class自学笔记 (6) 关系代数
对一个relation的集合做查询操作会产生相应的集合!下面用一个大学申请系统做示例下面要做的是利用不同操作选取出我们想要的结果!select 选择操作select操作选出满足条件对应的行 格式为Project操作project操作用于选出符号条件的列的列 格式为当我们又要选出指定row和指定column的时候,我们可以对操作符进行组合例如选出 ID ...原创 2019-07-10 21:28:38 · 254 阅读 · 0 评论 -
StanfordDB class自学笔记 (5) JSON Data
JSON简介JSON的全称是 JavaScript Object Notation,和XML类似,可以认为是一种存储数据的模型“serializing序列化” 数据对象的标准,一般用在文件中 人可读,对数据交换有帮助 对表达&存储 半结构数据(没有严格结构的数据)有用和JavaScript 不再紧密相连 已经有很多编程语言有JSON的解析器,并且能输出JSON...原创 2019-07-10 18:45:37 · 137 阅读 · 0 评论 -
StanfordDB class自学笔记 (4) XML Data
XML的全称是 Extensible Makeup Language 数据表示、交换的标准 文件的格式类似HTML 其中tags用来表示content内容而不是formatting格式 流式格式 比如下面是一个具体的xml格式Relational Model 对比 XML要注意的点是Relational Model的结构是提前设计好并且锁定的,而...原创 2019-07-10 16:52:11 · 286 阅读 · 0 评论 -
StanfordDB class自学笔记 (3) 查询关系型数据库总览
创建、使用关系型数据库的步骤设计schema;用DDL(data definition language)创建 “批量装载”初始数据 重复:执行查询和修改操作查询返回一些组合的关系,如下图查询语言relational algebra 关系代数:相对正规 SQL :实际使用...原创 2019-07-10 15:54:12 · 224 阅读 · 0 评论 -
StanfordDB class自学笔记 (2) 关系模型
关系模型的一些性质关系模型存在所有的主要商业数据库系统 简单的模型 用高级语言查询:简单但是有效 有效率的操作schema(架构)表示数据库中关系的结构表示instance(实例)给定某个时间、结点的表中内容关系模型可以用下图表示数据库=有名字的关系relation(或者表格table)的集合每一个关系含有命名的attribute(或者columns) 每...原创 2019-07-10 14:29:47 · 261 阅读 · 0 评论 -
StanfordDB class自学笔记 (1) 数据库系统简介
斯坦福大学的数据库课程 也是好几年前的课程了,第一遍学习差不多用了10天看完视频,上完只是做了一些课后的练习,没有做任何的笔记。自己感觉学完二周后就忘了很多东西(大概是没有大量的去使用),这次打算再好好看一遍视频,把一些知识点串联、整理一下,为以后的面试、工作做一些准备。整体来说感觉这门课还是不错的,推荐同学们上一下。数据库管理系统提供了什么数据库系统提供了:有效、可靠、方便、多用户存储利...原创 2019-07-10 13:40:50 · 596 阅读 · 0 评论 -
数据库入门
一.什么是数据库 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。简而言之,就是用数据库来存储我们原创 2016-07-14 07:07:33 · 353 阅读 · 0 评论