2.2触发器

  触发器是在操作表的时候(CRUD)自动执行一段逻辑代码。

系统数据库

1.master数据库

保存一种特殊的表(系统表)用于系统的总体控制。所有扩展的存储过程和系统存储过程都存储在master
数据库中。

2.model 数据库

可以基于该模型得到一个副本。也就是说,如要想要改变
新建标准数据库的样式,可以根据需要去更改model数据库。但是强烈建议不要修改。

3.msdb 数据库

是 SQL Agent (sql server 代理)进程存储任意系统任务的地方。

4.tempdb数据库

是服务器主要工作区域之一。在执行一个复杂或者大型的查询操作时,sql
server可能会需要创造一些中间表来完成,而这就是在 tempdb中进行的

只要需要临时存储数据,就很可能是把数据存储在tempdb 数据库中。

 

2.表

  数据库中实际的数据都存在表中。表有行有列。

关系数据库管理系统(RDBMS)

 

6.存储过程

  存储过程是SQL
Service编程功能的基础。存储过程通常是组成一个逻辑单元的Transact-SQL(SQL
Service 数据库查询语言)语句的有序集合。

     存储过程允许使用变量和参数,也可使用选择和循环结构。

 

SQL Server 配置管理器

主要分为两个部分 : 服务管理   网络配置

 

服务管理 :安装完整的SQL Server包括9个服务,其中7个服务可以使用sql
server配置管理器这一部分来管理(另外2个 是作为后台支持的服务)

     7个包括:

图片 1

 网络配置 :**

  提供的NetLib包括 4个:

 VIA (硬件存储器供应商可能支持的特殊虚拟接口)

图片 2

 

协议:为了让客户机与服务器进行连接,服务器必须
侦听协议,而客户机使用该协议试图与服务器通信,如果是TCP/IP
协议,则要在相同端口上。

TCP/IP
在这个连接来有介绍到 

 

SQL Server 集成服务

功能很强大,可以从各种数据源取得数据,并将数据输入到SQL
Server数据表。是一种数据转换服务,数据转换本质上是指按照某种逻辑规则处理数据。

 

Bulk Copy Program

老的帮助工具。是命令行程序,其主要目的是将导入导出SQL
Server的数据全部格式化。

 

SQL Server Profiler

实质上是实时跟踪工具,跟踪细节,具有很强的过滤功能。

sqlcmd

控制台应用程序。

PowerShell

它是一个非常健壮的脚本和服务器导航引擎。可以导航服务器上所有的对象。

 

5.维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?

答:我是这样做的,尽可能使用约束,如check,主键,外键,非空字段等来约束,这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性。最后考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下。

 

3.文件组 

  默认情况下,表及其他对象要存储在一个文件中,默认情况下,该文件就是文件组的主要成员。

       用户可以自己创建自定义文件组。

事务日志

数据从数据库文件中读取,但实际上,任意数据库的更改起初
不进入数据库的更改,而是被不断的写入到事务日志中的。日志是数据进入磁盘的最先位置,然后被传入实际数据库

数据库文件和事务日志一起完成数据库功能。

 

21.默认的系统数据库有哪些?

1)master数据库(主);2)tempdb数据库(临时);3)model
数据库(模板);4)msdb数据库(计划任务);

  2.3约束

       约束只能在表中,就是限制表中的数据满足某种条件。

数据库对象

 

索引  
是仅在特定表或视图架构内存在的对象。是一个或多个键的集合,每个键指向表中的一行。使用索引是快速查找数据库中实际信息的一种方法。

     分为2类
聚集索引—-聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。

            但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。

      
 非聚集索引—-非聚集索引与课本中的目录类似。数据存储在一个地方,索引存储在另一个地方,索引带有指针指向数据的存储位置。索引中的项目按索引键值的顺序存储,

             而表中的信息按另一种顺序存储  

 触发器   是在表操作时(插入、更新、删除等)自动执行的一段逻辑代码。

    理解:某个条件成立时,触发器里面所定义的语句就会被自动的执行。触发器不需要去调用,也不能调用。

 约束 
 是在任何业务中,数据通常必须符合特定限制或规则。例如,职员编号必须是
唯一的。数据库管理器提供了约束作为强制实施这种规则的方法。

 数据库关系图   是数据库设计器是一种可视化工具,它允许您对所连接的数据库进行设计和可视化处理。 

       设计数据库时,您可以使用数据库设计器创建、编辑或删除表、列、键、索引、关系和约束。 

       为使数据库可视化,您可创建一个或多个关系图,以显示数据库中的部分或全部表、列、键和关系。

 视图 
 视图是一个虚拟表,其内容由查询定义。视图在数据库中并不是以数据值存储集形式存在,除非是索引视图。视图通常用来集中、简化和自定义每个用户对数据库的不同认识。

 存储过程   是组成一个单元的T-SQL语句的有序集合。

 

 

5.视图

  视图是一种虚拟表(不包含数据,其它与表类似)。

 

1.事务日志

  任意数据库的更改起初不进入数据库本身,而是不断地被写入到事务日志。

  日志是数据进入磁盘上的最先位置。

11.什么是主键?什么是外键?

主键是表格里的(一个或多个)字段,只用来定义表格里的行;主键里的值总是唯一的。外键是一个用来建立两个表格之间关系的约束。这种关系一般都涉及一个表格里的主键字段与另外一个表格(尽管可能是同一个表格)里的一系列相连的字段。那么这些相连的字段就是外键。

4.数据库关系图

  数据库关系图是数据库设计的可视表示。

 

 2.1索引

  
索引是在特定表或视图框架内存在的对象。索引的功能类似于目录,可以加速信息的查找。

  索引分两类:

    群集索引—每个表只能有一个。群集索引按照其索引进行物理排序。列子:如果为百科全书做索引,群集索引就是页码。

    非群集索引—每个表可以有多个。非群集索引是指用于找到数据的其他一些值。列子:为百科全书做索引,非群集索引就是百科全书后面的关键字索引。

15.你可以用什么来确保表格里的字段只接受特定范围里的值?

这个问题可以用多种方式来回答,但是只有一个答案是“好”答案是Check限制,它在数据库表格里被定义,用来限制输入该列的值。

触发器也可以被用来限制数据库表格里的字段能够接受的值,但是这种办法要求触发器在表格里被定义,这可能会在某些情况下影响到性能。因此,微软建议使用Check限制而不是其他的方式来限制域的完整性。

 

学习SQL Server 2012编程入门经典(第4版)的笔记

10.什么是索引?SQL Server 里有什么类型的索引?

 简单地说,索引是一个数据结构,用来快速访问数据库表格或者视图里的数据。在SQL
Server里,它们有两种形式:聚集索引和非聚集索引。聚集索引在索引的叶级保存数据。这意味着不论聚集索引里有表格的哪个(或哪些)字段,这些字段都会按顺序被保存在表格。由于存在这种排序,所以每个表格只会有一个聚集索引。非聚集索引在索引的叶级有一个行标识符。这个行标识符是一个指向磁盘上数据的指针。它允许每个表格有多个非聚集索引。

3.索引的作用?和它的优点缺点是什么?

答:索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。

 

1.触发器的作用?

答:触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。

 

 

17.什么是相关子查询?如何使用这些查询?

相关子查询是一种包含子查询的特殊类型的查询。查询里包含的子查询会真正请求外部查询的值,从而形成一个类似于循环的状况。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注