SQLServer数据库基础解析:系统函数与数据完整性

需积分: 3 2 下载量 146 浏览量 更新于2024-08-15 收藏 4.65MB PPT 举报
"Sqlsever系统函数讲解及SQLSERVER数据库基础" 在SQL Server中,系统函数扮演着重要的角色,它们提供了获取系统信息、转换数据类型以及执行特定任务的能力。以下是一些关键的系统函数及其用途: 1. **USER_NAME()**: 这个函数接收一个用户ID作为参数,返回与该ID关联的用户名。例如,`USER_NAME(1)`将返回' dbo',这通常是默认的数据库所有者。 2. **CONVERT()**: 此函数用于将数据从一种类型转换为另一种类型。如`CONVERT(VARCHAR(5), 12345)`会将整数12345转换为长度为5的字符串"12345"。 3. **CURRENT_USER**: 这个函数返回当前登录用户的用户名,帮助确定执行SQL语句的上下文。 4. **DATALENGTH()**: 它用于计算表达式所占用的字节数。例如,`DATALENGTH('中国A盟')`返回7,因为这个字符串在UTF-8编码下占用7个字节。 5. **HOST_NAME()**: 提供了当前用户登录的计算机名称,这对于跟踪和审计目的非常有用。 6. **SYSTEM_USER**: 类似于CURRENT_USER,但SYSTEM_USER返回的是操作系统级别的登录用户名,而非数据库内的用户名。 SQL Server数据库基础方面,我们可以理解以下概念: - **数据库服务器**:负责响应和提供数据请求,它是存储和管理数据的核心。 - **应用程序**:与数据库交互,负责数据的展示和操作,通常要求界面友好且操作简便。 - **数据库**:存储、检索和管理数据的结构化存储。一个好的数据库需要具备统一性、安全性以及良好的性能。 - **为何需要数据库**:除了替代传统数据存储方式(如大脑记忆、纸质记录、内存或磁盘文件),数据库还提供了数据的集中管理、高效检索、数据一致性和安全性。 SQL Server中的数据库分为两类:**系统数据库**和**用户数据库**。系统数据库如master、model、tempdb和msdb,服务于SQL Server的运行,而用户数据库如ACCP、Pubs和NorthWind则用于存储用户数据。 - **创建数据库**涉及数据文件(.mdf或.ndf)和日志文件(.ldf)。数据被组织成页(8KB),每个页包含了表和索引的信息。 - **数据完整性**是数据库设计的关键。它确保数据的准确性、可靠性和一致性。完整性包括: - **域完整性**:确保列值符合特定的数据类型和格式,如年龄必须是数字。 - **实体完整性**:确保每一行都有唯一的标识符,如主键约束。 - **引用完整性**:保证外键引用的有效性,即引用的行在父表中存在。 - **自定义完整性**:根据业务规则设置的其他完整性约束,如信誉值限制。 通过在创建表时设定适当的约束,可以确保数据输入的正确性,避免错误数据和不符合要求的数据进入数据库。例如,设置年龄列的检查约束以接受数字,设置身份证号列的长度约束为18位,性别列的枚举约束只允许"男"或"女",等等。 这些基础知识构成了SQL Server中处理数据和系统交互的核心概念,对于理解和操作SQL Server数据库至关重要。