好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

SQL Server系统函数介绍

一、常用函数:

APP_NAME: 返回当前会话的 应用 程序名称(如果应用程序进行了设置)。

SELECT APP_NAME()

COALESCE: 返回其参数中第一个非空表达式

SELECT COALESCE(NULL,NULL,123,NULL)

COL_LENGTH(table,column):返回table表中column字段的长度;

SELECT COL_LENGTH('person','gender'),COL_LENGTH('person','FirstName');

COL_NAME(TABLE_ID,COLUMN_ID):返回指定表中指定字段的名称;

SELECT COL_NAME(OBJECT_ID('person'),1);---返回person表中第1个字段的名称;

COLLATIONPROPERTY: 返回给定排序规则的属性 CURRENT_TIMESTAMP: 返回当前的日期和时间。此函数等价于 GETDATE() CURRENT_USER: 返回当前的用户。

此函数等价于 USER_NAME()

SELECT CURRENT_USER

DATALENGTH(x): 返回字段x的数据的实际长度,即字节数,NULL的长度为NULL;

SELECT DATALENGTH('id'),DATALENGTH('Gender') FROM person WHERE id=2;

@@ERROR: 返回最后执行的 Transact-SQL 语句的错误代码 fn_helpcollations: www.cppcns.com 返回 Microsoft® SQL Server™ 2000 支持的所有排序规则的列表。 fn_servershareddrives: 返回由群集 服务器 使用的共享驱动器名称 fn_virtualfilestats: 返回对 数据库 文件(包括日志文件)的 I/O 统计 FORMATMESSAGE: 从 sysmessages 现有的消息构造消息。

FORMATMESSAGE 与 RAISERROR 语句的功能相似;但 RAISERROR 立即输出消息而 FORMATMESSAGE: 返回编辑后的信息供进一步处理

GETANSINULL: 返回会话的数据库的默认为空性。

该函数对ANSI空值NULL返回1,如果没有定义ANSI空值NULL,则返回0;

SELECT GETANSINULL('test2'),GETANSINULL('person'); ---test2是数据库,person是数据表;

HOST_ID: 返回工作站标识号。

返回值类型为CHAR(10);

SELECT HOST_ID();  --使用该函数可以记录那些想数据表中插入数据的计算机终端的ID;

HOST_NAME: 返回工作站名称。

SELECT HOST_NAME();

IDENT_INCR: 返回增量值(返回形式为 numeric(@@MAXPRECISION,0)),该值是在带有标识列的表或视图中创建标识列时指定的 IDENT_SEED: 返回种子值(返回形式为 numeric(@@MAXPRECISION,0)),该值是在带有标识列的表或视图中创建标识列时指定的 IDENTITY(函数): 只用在带有 INTO table 子句的 SELECT 语句中,以将标识列插入到新表中。

尽管类似,但是 IDENTITY 函数不是与 CREATE TABLE 和 ALTER TABLE 一起使用的 IDENTITY 属性。(自动采番时可以起到作用)

ISDATE: 确定输入表达式是否为有效的 编程 日期 ISNULL: 使用指定的替换值替换 NULL

SELECT AVG(ISNULL(id,0)) FROM dbo.school AS s

ISNUMERIC: 确定表达式是否为一个有效的数字类型

PRINT ISNUM  js  ERIC('1223A')

NEWID: 创建 uniqueidentifier 类型的唯一值 NULLIF: 如果两个指定的表达式相等,则返回空值。

SELECT NULLIF('AA','AA')

PARSENAME: 返回对象名的指定部分。可以检索的对象部分有对象名、所有者名称、数据库名称和服务器名称 PERMISSIONS: 返回一个包含位图的值,表明当前用户的语句、对象或列权限。 @@ROWCOUNT: 返回受上一语句影响的行数 ROWCOUNT_BIG: 返回受执行的最后一个语句影响的行数。该函数的功能与 @@ROWCOUNT 一样,除非 ROWCOUNT_BIG 的返回类型是 bigint。 SERVERPROPERTY: 返回有关服务器实例的属性信息 S www.cppcns.com ESSIONPROPERTY: 返回会话的 SET 选项设置 SESSION_USER: 是一个 niladic 函数,允许在未指定默认值时将 系统 为当前会话的用户名提供的值插入到表中。还允许在查询、错误信息等中使用用户名 SCHEMA_NAME: 查看Schema的ID和Name STATS_DATE: 返回最 android 后一次更新指定索引统计的日期

SELECT STATS_DATE(OBJECT_ID('school'),1)

SYSTEM_USER: 返回当前系统用户名 SUSER_ID():根据登录名返回用户的SID( 安全 标识号)

SELECT SUSER_SID(),SUSER_SID('COMPU\Administrator'); --不带参数时返回当前用户的ID,也可以带参数指定用户;

SUSER_SNAME():返回与安全标识符关联的登录名

返回值类型为NVARCHAR(128);

SELECT SUSER_SNAME(),SUSER_SNAME(0x010500000000000515000000C1289E4023B53F66B8323512E9030000);

@@TRANCOUNT: 返回当前连接的活动事务数 USER_ID():根据指定用户名返回数据库用户的ID,

如果没有指定用户名,则返回当前用户的数据库ID;

SELECT USER_ID();

USER_NAME():根据与数据库用户关联的ID返回数据库用户名,

返回值类型为nvarchar(256);

SELECT USER_NAME(),USER_NAME(USER_ID());

二、插入后返回值的方法:

SCOPE_IDENTITY: 返回为当前会话和当前作用域中的任何表最后生成的标识值。 SELECT SCOPE_IDENTITY();(推荐) @@IDENTITY: 返回为当前会话的所有作用域中的任何表最后生成的标识值。 SELECT @@Identity; IDENT_CURRENT: 返回为任何会话和任何作用域中的特定表最后生成的标识值。SELECT IDENT_CURRENT('table_name');

到此这篇关于SQL Server系统函数的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

查看更多关于SQL Server系统函数介绍的详细内容...

  阅读:22次