【知识点详解】
1. 数据库管理系统基础:数据库是存储和管理数据的系统,它通过组织、存储和处理数据来支持各种应用。文档标题暗示我们正在讨论数据库管理与应用相关的作业,这可能涵盖数据库设计、查询优化、事务处理、安全性等方面。
2. 数据库文件类型:在SQL Server中,`.mdf`是主要数据文件的扩展名,`.ldf`是日志文件的扩展名,而`.ndf`是辅助数据文件的扩展名。这些文件构成了数据库的物理结构。
3. 数据类型:在SQL中,`char`是固定长度的字符数据类型,`number`不是标准的SQL数据类型,`varchar`是可变长度的字符数据类型,`int`用于整数。选择题中提到了这些类型,说明可能涉及数据类型的选用和理解。
4. 完整性约束:实体完整性约束确保主键字段的唯一性和非空性;参照完整性约束保证了表之间的引用完整;用户自定义完整性约束允许定制特定的约束规则,例如题目中提到的学号值域限制。
5. 表达式和通配符:表达式`ABC_a`和`A%a`分别代表不同的模式匹配。`_`通常代表单个任意字符,`%`则代表任意数量的字符。
6. SQL查询语言:SQL用于查询和操作数据库。题目中出现了多种查询语句,如选择最近的销售记录、根据特定条件排序等,这涉及到`ORDER BY`子句的使用。
7. 触发器:在数据库中,触发器是一种特殊类型的存储过程,会在特定的DML操作(如INSERT、UPDATE或DELETE)发生时自动执行。在题目中,创建了一个更新触发器来同步`Order`表和`OrderDetails`表的`LastModifiedDate`。
8. 更改跟踪:SQL Server提供了更改跟踪功能,用于捕获表中的更改。题目中涉及使用`CHANGETABLE`函数来获取Sales表的更改历史。
9. 聚合函数:聚合函数如`COUNT`、`SUM`、`AVG`、`MIN`和`MAX`用于处理一组值并返回单一结果。题目指出有一个聚合函数不忽略空值,这通常是`COUNT(*)`,因为它会计算所有行,包括含有NULL值的行。
10. JOIN操作:在SQL查询中,JOIN子句用于合并来自两个或更多表的数据。`LEFT JOIN`返回左表的所有记录以及右表匹配的记录,`RIGHT JOIN`反之,`INNER JOIN`只返回匹配的记录。在查询所有员工及其主管时,可能会使用`LEFT JOIN`,因为即使有些员工没有指定主管,也应该出现在结果集中。
11. 版本控制:在数据库中,版本控制可以帮助追踪数据的变化历史。题目提到的版本10以后的销售数据查询,涉及到了版本控制的概念,可能需要利用SQL Server的更改跟踪特性来实现。
这些知识点涵盖了数据库的基础概念、数据类型、完整性约束、SQL查询语法、触发器、更改跟踪以及JOIN操作,这些都是数据库管理和应用中的核心内容。