Microsoft SqlServer2008技术内幕:T-Sql语言基础-读书笔记1
一、理论背景:关系模型,其数学理论是集合论和谓词逻辑。
1、集合论:集合定义是把我们直观或思维中确定的,相互间有明确区别的那些对象视为一个整体,这个整体就是集合。
2、谓词逻辑:谓词是判断对象是否有某种性质或满足某种条件的一个词:true or false。可以通过谓词来定义集合。
3、关系模型:目标是要用最少或完全无冗余地支持完整数据的持久化表示,而且还要将数据完整性定义为模型的一部分。
通过一个命题来表示关系,关系是集合的一种表示,在数据库中是数据表。用命题来创建谓词
SqlServer支持NULL。三值谓词逻辑
4、约束:Check约束,默认值约束,主键和Unique,外键。
5、规范化:第一范式要求行唯一;
第二范式要求非候选键完全函数依赖整个候选键;
第三范式要求非候选键不能依赖于其他非候选键;
二、数据在数据库各种环境中:OLTP,DataWarehouse,OLAP,DataMining
1、OLTP:线上事务处理,进行更新,新增,修改。不适合查询
2、DataWarehouse:用于查询数据的环境,增加一些冗余,通过更少的表和更简单的关系查询数据。最简单的设计是星形模式。将OLTP的数据处理,加载到DW的工具是ETL。 sqlserver用SSIS实现ETL。
3、OLAP:线上分析处理,事先聚合好数据。sqlserver用SSAS实现OLAP
4、数据挖掘
数据生命周期:OLTP->DB->ETL-->DW。OLAP和DM对DW进行数据分析和挖掘。
三、SqlServer体系结构:
1、SqlServer实例,表示:IP地址或计算机名\实例名称。
2、数据库:系统数据库(master,model,tempdb,msdb,Resource)和用户自定义数据库。
master:保存Sqlserver实例范围内的元数据信息,服务器配置,实例中所有所有数据库的信息,初始化信息。
model:新数据库的模板。
tempdb:保存临时数据,实例重启后,自动清除。
msdb:SqlServer Agent服务保存数据的地方。
Resource:保存所有系统对象。
数据库属性:collation(排列规则);登录账号映射到数据库用户
物理层:数据文件和事务日志文件,可以有多个数据文件(用文件组区分,主文件组必须有.mdf,其他的是.ndf)
Microsoft SqlServer2008技术内幕:T-Sql语言基础-读书笔记1的更多相关文章
- Microsoft SqlServer2008技术内幕:T-Sql语言基础-读书笔记-单表查询SELECT语句元素
1.select语句逻辑处理顺序: FORM WHERE GROUP BY HAVING SELECT OVER DISTINCT TOP ORDER BY 总结: 2.FORM子句的表名称应该带上数 ...
- 《[MySQL技术内幕:SQL编程》读书笔记
<[MySQL技术内幕:SQL编程>读书笔记 2019年3月31日23:12:11 严禁转载!!! <MySQL技术内幕:SQL编程>这本书是我比较喜欢的一位国内作者姜承尧, ...
- 2008技术内幕:T-SQL语言基础
2008技术内幕:T-SQL语言基础 单表查询摘记 这里的摘抄来自<Microsoft SQL Server 2008技术内幕:T-SQL语言基础>,书中用到的案例数据库是这个 TSQLF ...
- 2008技术内幕:T-SQL语言基础 联接查询摘记
续 2008技术内幕:T-SQL语言基础 单表查询摘记 第三章 联接查询 Microsoft SQL Server 2008 支持四种表运算符 join(ANSI标准).apply(T-SQL扩展). ...
- 2008技术内幕:T-SQL语言基础 单表查询摘记
这里的摘抄来自<Microsoft SQL Server 2008技术内幕:T-SQL语言基础>,书中用到的案例数据库是这个 TSQLFundamentals2008 ,官网给出的连接是这 ...
- 【Mysql技术内幕InnoDB存储引擎】读书笔记
一.存储引擎 1.InnoDB引擎 设计目标是面向在线事务(OLTP)处理的应用. 支持事务.行级锁.通过多版本并发控制(MVCC)支持高并发.提供一致性非锁定读.next-key locking避免 ...
- SQL语言基础和数据库操作
Sql语言基础: 核心思想:我们自己构造一段查询的代码,然后添加到语句后,从而得到想要的某些数据. Mysql是一种开源数据库 APP Serv:Apache+php+mysql,相当于phpstud ...
- PL/SQL语言基础
PL/SQL语言基础 进行PL/SQL编程前,要打开输出set serveroutput on 1.创建一个匿名PL/SQL块,将下列字符输出到屏幕:"My PL/SQL Block Wor ...
- 《Troubleshooting SQL Server》读书笔记-CPU使用率过高(下)
<Troubleshooting SQL Server>读书笔记-CPU使用率过高(下) 第三章 High CPU Utilization. CPU使用率过高的常见原因 查询优化器会尽量从 ...
随机推荐
- 在Ubuntu Server14.04上编译Android6.0源码
此前编译过Android4.4的源码,但是现在Android都到了7.0的版本,不禁让我感叹Google的步伐真心难跟上,趁这周周末时间比较充裕,于是在过去的24小时里,毅然花了9个小时编译了一把An ...
- win7下eclipse中文字显示过小
用win7英文版系统,在eclipse里输入中文字的时候小的可怜,今天实在忍不下去了,随网上搜了搜找到了解决办法,记录下来备用. 操作步骤:打开Elcipse --点击菜单栏上的 “Windows”— ...
- SQL函数——LENGTH()和LENGTHB()
LENGTH()函数是比较简单同时也是非常有用的一个函数,在此小记一下,加深印象以备后用! 1:先上实验的例子——我新建了一张Student表,插入了若干条测试数据,如下图所示: 2:实验LENGTH ...
- com组件 智能指针崩溃问题崩溃问题
int main(){ CoInitialize(NULL); HRESULT hr; IWinHttpRequestPtr pHttpReq=NULL; pHttpReq.CreateInstanc ...
- CreateThread和_BeginThread的区别
1.程序: 程序构成: (1)源代码 (2)可执行的二进制代码 程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念.由操作系统加载其可执行的二进制代码,分配相应的数据结构:进程控制 ...
- python md5
import hashlib import os 简单的测试一个字符串的MD5值 src = 'teststring' print (hashlib.md5(src).hexdigest().uppe ...
- DataGridview焦点不移开不保存数据问题
this.datagridLeft.ClearSelection(); this.datagridLeft.Refresh(); this. ...
- vim的.vimrc文件设置
set nocompatibleset autowriteset autoreadset nobackupset noswapfile " --- syntax and indent --- ...
- 嵌入式linux移植LAMP服务器
一.工具准备工作 要想在ARM平台上移植一套Apache+Msql+PHP的Web型服务器. 所用物理机系统: Ubuntu 14.04 LTS(64位) 交叉编译环境: arm-linux-g ...
- sql server2005 实现读写分离
下面我们重点介绍Sql Server 2005是如何实现负载均衡的. Sql Server 2005的新特性 端到端拓扑的事务性复制 SQL Server 2005对端到端(P2P)拓扑结构上事务性的 ...