SQL知识点

一、描述关系型数据库的概念

就是基于关系模型的数据库,在计算机中,关系型数据库时数据和数据库对象的集合,而管理关系语句库的计算机软件我们称之为关系数据库管理系统(Relational DataBase Management System,RDBMS)。

二、描述实体完整性约束

实体完整性要求表中的每一行数据都反映不同的实体,不能存在相同的数据行,通过设置主键约束、唯一约束、索引或标识列,来实现完整性。

三、描述域完整性约束

域完整性是指限定信息的有效性。可通过限定数据类型、检查约束、外键约束、默认值、非空约束,来实现表的域完整性

四、描述引用完整性约束

引用完整性约束是用来保持表之间已定义的关系,确保插入到表中数据时有效的。可通过主键和外键之间的引用关系来实现。

五、描述自定义完整性约束

自定义完整性用来定义特定的业务规则,做不同行业的软件,其业务规则是不同的。可通过数据库的规则、触发器、存储过程来实现。

六、描述主键约束

主键约束可以唯一标识数据表中的每一条记录,避免数据的冗余。主键约束需要指定一列,这个列中的值能够表示不同的实体。如果表中一列不能确定一个实体,需要几列的组合才能确定,那么这几列可以联合作为主键,称之为“联合主键”。

七、描述T-SQL语言的组成部分

DML(Data Manipulation Language)数据操作语言:用来查询、插入、删除和修改数据库中的数据,如:select,insert,upate,delete等语句。

DDL(Data Definition Language)数据定义语言:用来创建数据库、数据表、视图、存储过程的操作指令,如:create,table,drop table等。

DCL(Data ControlLanguage)数据控制语言:用来管理数据库用户的权限、数据完整性、安全性、并发性等数据库管理操作,如:grant等。

八、数据库可包含哪几种文件?

1. 主数据文件.mdf, 必备文件,一个数据库只能有一个主数据文件

2. 日志文件.ldf, 必备文件, 一个数据库可有多个日志文件

3. 次数据文件.ndf, 一个数据库可有多个次数据文件

九、系统数据库有哪几个,并简要介绍它们的作用

1. master:存储所有的系统级信息;如果master数据库不可用,则SQL Server无法启动;

2. model:创建数据库的模板;

3. msdb:主要被SQL SERVER代理用于进行复制、作业调度及管理警报等活动;

4. tempdb:临时数据库,保存所有的临时表和临时存储过程;

十、复制或移动数据库时,如果文件不让拷贝,可以采用哪些手段解决

1.分离与附加

2.脱机与联机

十一、谈谈你对标识列的理解

  1. 当不知道用哪个字段作为主键或没有合适的字段作为主键时,可使用标识列;
  2. 标识列的数据类型应该为数字类型;
  3. 通过定义标识种子和标识增量实现自动递增,不会出现重得数据;
  4. 标识列的数据自动生成,不能对该列进行插入和修改;
  5. 删除了具有标识列的表中数据后,标识列的数值依然继续递增;

十二、谈谈你对外键约束的理解

1. 外键约束主要用于实现引用完整性

2. 具有外键约束的列中值必须在主表的主键列中事先存在,不能将主表中关联列不存在的数据,插入到子表中

3. 不能更改主表中的数据,而导致子表中数据的孤立。

4. 不能删除主表中的数据,而导致子表中数据的孤立

5. 删除主表前,先删子表

十三、TRUNCATE TABLE语句有什么功能和特点

1. 只删除表中的数据,不会删除表结构及各种约束

2. 与不带WHERE条件的DELETE相比,它的执行速度更快

3. 不能删除具有引用关系的数据表

十四、向表中一次插入多行数据的语句有哪几个

1. INSERT INTO <表1>… SELECT… 语句:要求表1必须事先存在

2. SELECT… INTO <表1>… 语句:要求表1必须事先不存在

3. 使用UNION关键字插入多行数据

十五、日期函数DATEPART和DATENAME有什么功能,它们有什么区别,使用这两个函数得到当前日期的分钟部分应该怎么写

这两个函数都可以返回日期的指定部分,区别是DATEPART返回的是一个整数,而DATENAME返回的是一个字符串;

得到分钟部分:

使用DATENAME:select datename(mi,getdate())   select datename(n,getdate())

使用DATEPART:select datepart(mi,getdate())   select datepart(n,getdate())

十六、CONVERT函数有什么功能?如何得到用中杠隔开的表示当前日期的字符串(如’2011-06-01’)?

CONVERT函数可以完成数据类型的转换,即将某一种数据类型的数据转换为另外一种。

Select convert(varchar(11),getdate(),121)

Select substring(convert(varchar,getdate(),121),1,10)

 十七、分组统计必须牢记的一句话是什么?having子句有什么用处?如果一个SQL语句中除了WHREE子句又有HAVING子句,那么它们的执行顺序是什么?

1. SELECT语句中除聚合函数外所有列,应写在Group By语句后面,否则将出现错误。

2. HAVING子句用于分组统计之后对结果集再次进行条件过滤

3. 先执行WHERE子句对源数据进行过滤,然后执行GROUP BY进行分组,最后执行HAVING子句对分组结果集再次进行过滤

十八、SQL SERVER的权限管理可以分为哪三关?

1. 登录SQL SERVER系统,需要登录帐户

2. 访问某个数据库,需要成为该数据库的用户

3. 访问数据库中的表,需要数据库管理员给您授权,如增添、修改、删除、查询等权限

十九、描述外连接,左外连接中哪个表是主表

外连接中参与连接的两个表有主从之分,以主表中的每行数据去匹配从表中的数据列,符合连接条件的数据将直接返回到结果集中,对于在主表中存在而从表中不存在的数据,将以NULL值代替并返回到结果集中。

左个连接中左表是主表,即from后面的那个表

二十、描述数据库备份与还原的几种方式

备份:

  1. 完整备份:对整个数据库进行备份,既数据中的主数据文件、所有的次数据文件和日志文件。
  2. 事物日志备份:只备份事物日志文件。
  3. 差异备份:备份上一次的完全备份后发生变化的所有文件

还原:

  1. 完整备份的还原只需要还原备份文件即可
  2. 差异备份的还原一共需要2个步骤,第一个步骤先还原完整备份,第二步还原最后一个差异备份。

转载于:https://my.oschina.net/u/3820331/blog/1832262

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值