暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

2024年 35个 SQL Server 热门面试题

通讯员 2024-07-12
654

数据越来越大,在决策中发挥着重要作用。为了处理这些数据,需要一个数据库和数据库管理系统。最受欢迎的数据库管理系统之一是 MS SQL Server。了解 MS SQL 为成为 SQL 专家和 SQL 开发人员打开了大门。要在 SQL Server 面试中取得好成绩,需要准备好面对 SQL Server 面试题。在本文中,我们将介绍最常见的 MS SQL Server面试题。让我们开始吧。

2024 年 热门 SQL Server 面试题

让我们从前 35 个 SQL 服务器面试问题开始(专为帮助您应对下一次面试而精心策划)

1. SQL Server 中的 Windows 身份验证模式是什么?

此模式通过 Windows 帐户连接服务器。服务器使用用户名和密码进行身份验证。在此模式下,SQL Server 身份验证处于禁用状态。

2. 举例说明SQL服务器中的一个函数,该函数从参数中的多个列返回第一个非空表达式。

从学生中选择 COALESCE(sid, sname, marks);

3. 解释 SQL Server 数据库中的一一对多关系。

当一个表中的单个列值在另一个表中至少有一个依赖列值时,就存在一对多关系。

4. CHECK在SQL Server中的意义是什么?

CHECK 约束限制可以放置在表列内的值。这样可以保持完整性。该约束按列使用,用于为该列提供特定值。示例:CONSTRAINT CHK_Student CHECK (年龄<20)

5.如何从学生表中找到第三高分?

从中选择前 3 个分数 (从学生中选择不同的前 3 个分数 按分数排序 DESC) 按分数排序

6. 什么是触发器?

当发生表事件(如 INSERT、DELETE 或 UPDATE)时,触发器允许执行 SQL 代码批处理。触发器由 DBMS 管理,还可以执行存储过程。[2] 例如,当在数据库表中插入记录时,可以设置触发器。

7. 何时可以从 SQL Server 的视图中删除记录?

可以在“简单”视图中删除记录,因为它仅包含来自一个表的数据。

8. 列出 MS SQL Server 的一些功能。

  • 它提供了一种简单明了的语法。
  • MS SQL 使用事务处理 SQL。
  • 不支持查询优化。
  • 事务处理不允许回滚
  • 不支持聚类分析
  • 语句是串行执行的。

9. 可以使用哪个命令来获取SQL Server的版本?

若要获取 SQL Server 的版本,请使用:

选择 SERVERPROPERTY('productversion')

10. 在 SQL Server 中,什么是用户定义的函数?

用户定义的函数允许用户根据需要编写他们的逻辑。优点是它不局限于预定义的函数和编写函数,只需复杂的SQL代码即可。返回类型是表或标量值。

Example: Create function sample(@sid int)  

returns table  

as  

return select * from s where Id = @sid 

11. 说明 SQL Server 中的复制类型。

有三种类型的复制,如下所示:

  1. 事务复制 - 这是从发布者到订阅者的数据分发过程。当数据频繁更改时,可以使用事务复制。
  2. 合并复制 - 它将来自各种来源的数据分组到一个集中式数据库中。合并复制用于中央数据库和分支数据库需要同时更新信息的情况。
  3. 快照复制 - 此复制是复制不经常更改的数据的最佳方式,并且最容易维护。示例:快照复制可用于每天更新一次且需要从主服务器分发到分支服务器的列表。

12. 定义引用完整性。

每个外键值都必须具有对应的主键值。外键和主键之间的这种一致性的维护称为引用完整性。

13. 什么是TCL命令?并列出 SQL Server 上可用的 TCL 命令?

TCL 或事务控制语言命令用于管理数据库中发生的不同事务。三个 TCL 命令如下:

  1. Rollback - 用于将数据库还原到上次提交的状态
  2. Save Transn - 这将保存事务,并且事务可以回滚到这一点。
  3. Commit - 将事务永久保存在数据库中

14. 编写 SQL Server 查询,从 student 表中获取名称“Jenna”中的字母“e”。

从学生中选择 CHARINDEX('e',NAME,0) where name='Jenna'

15. 作为 SQL 开发人员,您将如何确保基于 SQL Server 的应用程序和数据库性能良好?

必须检查数据量、存储的信息类型和要访问的数据。在升级系统时,应分析当前数据,并检查访问数据的方法,以帮助理解问题设计。使用新系统时,保留有关数据的信息是必要的。

16. 什么时候应该使用基于服务器的游标?

当您需要在任何时间实例上处理一条记录时,而不是批量获取表中的所有数据。当存在大量数据时,游标的性能会受到影响。

17. 请介绍一下FLOOR函数的工作原理。

FLOOR 函数将给定的非整数值四舍五入到前一个最小整数,例如,FLOOR(5.6) 返回 5

18. 您对 SQL Server 中的计划任务了解多少?

计划的作业或任务可自动执行可以在规定的时间、定期间隔运行的流程。通过调度任务,减少了人为干预,任务可以随时按照用户想要的顺序执行。

19. 提及一个返回数据库中触发器列表的查询。

从 sys.objects 中选择 *,其中 type='tr'

20. 区分回滚和提交。

执行 COMMIT 时,BEGIN 和 COMMIT 之间的所有语句都将持久化到数据库中。然而,当执行 ROLLBACK 时,ROLLBACK 和 BEGIN 之间的所有语句都将恢复为该状态。

21. 说明如何在 SQL 中创建表。

以下查询用于创建SQL表:

Create table name_of_table(  column1 datatype, column2 datatype ) 

For example:

create table Student  

(  

   Name varchar(20),  

   DOB date,  

   Marks nvarchar(5),  

   Subject varchar(20)   )

22. 外键在数据库中的作用是什么?

外键用于定义由列连接的父表和子表之间的关系。外键是一个约束,用于确保子表的值显示在父表中。一个表的外键是另一个表的主键,一个表可以有多个外键。例如:

student {ID, Name, Age, Contact, Gender, Add}

teacher{Teach_ID, Name, ID}

在这里,ID 是 teacher 表的外键。

23. 视图在数据库中的重要性是什么?

在某些情况下,我们需要寻找获取解决方案的视图,例如:

  1. 聚合数据以提高性能
  2. 为一组用户自定义架构和数据
  3. 控制对数据列和行的访问

24. 告诉我们隐藏 SQL Server 实例的步骤。

要隐藏 SQL Server 实例,我们需要在 SQL Server 配置管理器中进行更改,要启动它,需要执行以下步骤:

  1. 选择 SQL Server 的实例
  2. 右键单击后选择属性
  3. 将“隐藏实例”设置为“是”,然后单击“应用”
  4. 发布更改,重新启动 SQL Server 实例

25. 解释 DBCC 命令及其用法。

数据库一致性检查器(DBCC)检查数据库的一致性;它有助于审查和监视数据库、表和操作验证的维护。例如:

  • DBCC CHECKALLOC 检查数据库中的所有页面,以确保它们被正确分配。
  • DBCC CHECKDB 确保索引在数据库的表中正确链接。
  • DBCC CHECKFILEGROUP 检查所有文件组是否损坏。

26. 描述 SIGN 函数。

SIGN 函数用于将数字指定为正数、零数或负数。它返回以下内容:SIGN(数字)

如果数字 <0,则返回 1,如果 number>0,则返回 +1,如果 number=0,则返回 0

27.定义备用键。

当表具有多个候选键(即主键的候选键)时,一个将成为主键,其余的则成为备用键。

28. 定义联接。联接有哪些不同类型?

联接在 SQL 查询中用于描述不同表的关联方式。它们还允许用户根据另一个表的数据从一个表中选择数据。不同类型的联接包括:

  1. INNER Joins
  2. OUTER Joins- 左外侧、右外侧、全外侧
  3. CROSS Joins

29. 讲述 UPDATE STATISTICS 的使用。

UPDATE STATISTICS 用于更新有关索引视图或指定表中一个或多个统计组/集合的键值分布的信息。

30. 定义完整备份。

SQL Server 中最常见的备份类型是数据库的完整备份。它还包括用于恢复的事务日志的一部分。

31. 在SQL中,标识列是什么意思?

在 SQL 中,标识列会自动生成数值。这些列不需要索引,我们可以定义标识列的开始值和增量值。

32. 解释 UNIQUE KEY 约束。

UNIQUE 约束保持列集中记录的唯一性,以确保没有重复的值。此约束强制执行实体完整性。

33. 定义非规范化过程。

非规范化过程会将冗余数据添加到数据库中,以提高性能。这种技术从数据库的高级正常形式移动到了低级的正常形式。这加快了数据库访问的速度。

34. 展示如何将表类型约束应用于表。

Alter Table Name_of_the_Constraint

Alter Table Constraint_1

35. 区分派生的持久属性和派生的属性。

派生属性是从其他现有列的值中获取的,因为其值本身不存在。可以存储的派生属性是派生的持久性属性。

结论

这些 SQL Server 面试问题必须让您深入了解各种基本的 SQL 主题。在参加下一次 SQL Server 面试之前,不要忘记练习它们。


文章作者:Simplilearn

2024年7月7日

文章转载自通讯员,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论