SQL Server 文件结构与全局变量
数据库和表
文件类型
- 主数据文件 .mdf
- 次要数据文件 .ndf
- 日志文件 .ldf
系统数据库
master 数据库
- 记录所有的登陆账户和系统配置设置
- 记录其他所有数据库的信息(包括数据库文件的位置)
- 记录SQL Server 的初始化信息
tempdb 数据库
- 保存多有临时表格临时存储过程
- 每次启动SQL Server时都会重新创建
model 数据库
- 数据库模板
msdb 数据库
- 供 SQL Server 代理程序调度警报和作业以及记录操作员时使用
SQL Server 2005全局变量
变量名称 | 说明 |
---|---|
@@CONNECTIONS | 返回自SQL Server本次启动以来,所接受的连接或试图连接的次数 |
@@CPU_BUSY | 返回自SQL Server本次启动以来,CPU工作的时间,单位为毫秒(ms) |
@@CURSOR ROWS | 返回游标打开后,游标中的行数 |
@@DATEFIRST | 返回SET DATAFIRST参数的当前值 |
@@DBTS | 返回当前数据库的当前timestamp数据类型的值 |
@@ERROR | 返回上次执行的SQL Transact语句产生的错误数 |
@@FETCH_STATUS | 返回FETCH语句游标的状态 |
@@IDENTITY | 返回最新插入的IDENTITY列值 |
@@IDLE | 返回自SQL Server本次启动以来,CPU空闲的时间,单位为毫秒 |
@@IO_BUSY | 返回自SQL Server本次启动以来,CPU处理输入和输出操作的时间,单位为毫秒 |
@@LANGID | 返回本地当前使用的语言标识符 |
@@LANGUAGE | 返回当前使用的语言名称 |
@@LOCK_TIMEOUT | 返回当前的锁定超时设置,单位为毫秒 |
@@MAX_CONNECTIONS | 返回SQL Server允许同时连接的最大用户数目 |
@@MAX_PRECISION | 返回当前服务器设置的decimal和numeric数据类型使用的精度 |
@@NESTLEVEL | 返回当前存储过程的嵌套层数 |
@@OPTIONS | 返回当前SET选项信息 |
@@PACK RECEIVED | 返回自SQL Server本次启动以来,通过网络读取的输入数据包数目 |
@@PACK SENT | 返回自SQL Server本次启动以来,通过网络发送的输出数据包数目 |
@@PACKET ERRORS | 返回自SQL Server本次启动以来,SQL Server中出现的网络数据包的错误数目 |
@@PROCID | 返回当前的存储过程标识符 |
@@REMSERVER | 返回注册记录中显示的远程数据服务器的名称 |
@@ROWCOUNT | 返回上一个语句所处理的行数 |
@@SERVERNAME | 返回运行SQL Server的本地服务器名称 |
@@SERVICENAME | 返回SQL Server运行时的注册键名称 |
@@SPID | 返回服务器处理标识符 |
@@TEXTSIZE | 返回当前TESTSIZE选项的设置值 |
@@TIMETICKS | 返回一个计时单位的微秒数,操作系统的一个计时单位是31.25ms |
@@TOTAL ERRORS | 返回自SQL Server本次启动以来,磁盘的读写错误次数 |
@@TOTAL READ | 返回自SQL Server本次启动以来,读磁盘的次数 |
@@TOTAL WRITE | 返回自SQL Server本次启动以来,写磁盘的次数 |
@@TRANCOUNT | 返回当前连接的有效事务数 |
@@VERSION | 返回当前SQL Server服务器的日期,版本和处理器类型 |
函数
聚合函数
聚合函数对一组值执行计算并返回单一的值。除COUNT函数之外,聚合函数忽略空值(NULL)
聚合函数仅在下列项中允许作为表达式使用:
- SELECT语句的选择列表(子查询或外部查询)
- COMPUTE或COMPUTE BY子句
- HAVING子句
函数 | 说明 |
---|---|
AVG | 求平均值 |
COUNT | 返回组中项目的数量,返回值为int 类型 |
COUNT_BIG | 返回组中项目的数量,返回值为bigint 类型 |
MAX | 求最大值 |
MIN | 求最小值 |
SUM | 求和 |
STDEV | 计算统计标准偏差 |
VAR | 统计方差 |