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

统计方差