您的位置:首页 > 数据库

SQL SERVER 系统函数

2016-05-21 18:46 232 查看
--1、COL_LENGTH(table,column):返回table表中column字段的长度;
SELECT COL_LENGTH('person','gender'),COL_LENGTH('person','FirstName');

--2、COL_NAME(TABLE_ID,COLUMN_ID)返回指定表中指定字段的名称;
SELECT COL_NAME(OBJECT_ID('person'),1);---返回person表中第1个字段的名称;

--3、DATALENGTH(X):返回字段x的数据的实际长度,即字节数,NULL的长度为NULL;
SELECT DATALENGTH('id'),DATALENGTH('Gender') FROM person WHERE id=2;

--4、DB_ID():返回数据库的编号;
SELECT DB_ID('test2'),DB_ID('master'),DB_ID();--没有指定参数时返回当前数据库的编号;

--5、DB_NAME():返回数据库的名称;
SELECT DB_NAME(),DB_NAME(DB_ID('test')),DB_NAME(DB_ID('test2'));

--6、GETANSINULL():返回当前数据库默认是否允许空值,该函数对ANSI空值NULL返回1,如果没有定义ANSI空值NULL,则返回0;
SELECT GETANSINULL('test2'),GETANSINULL('person'); ---test2是数据库,person是数据表;

--7、HOST_ID():返回服务器端计算机的标识号,返回值类型为CHAR(10);
SELECT HOST_ID();   --使用该函数可以记录那些想数据表中插入数据的计算机终端的ID;

--8、HOST_NAME():返回服务器端计算机的名称;
SELECT HOST_NAME();

--9、OBJECT_ID():返回数据库对象的编号;
SELECT OBJECT_ID('test2.dbo.person');
--test2为数据库名称,dbo为架构名称,person为数据表名称,此处为返回person表的对象ID;
--当指定一个临时表的表名mytemptable时,前面必须加上临时数据库名tempdb,如SELECT OBJECT_ID("tempdb..#mytemptable");

--10、SUSER_ID():根据登录名返回用户的SID(安全标识号);
SELECT SUSER_SID(),SUSER_SID('COMPU\Administrator'); --不带参数时返回当前用户的ID,也可以带参数指定用户;

--11、SUSER_SNAME():返回与安全标识符关联的登录名,返回值类型为NVARCHAR(128);
SELECT SUSER_SNAME(),SUSER_SNAME(0x010500000000000515000000C1289E4023B53F66B8323512E9030000);

--12、OBJECT_NAME():返回数据库对象的名称;
--示例:查看数据库test2中对象ID值为1205579333的对象名称;
SELECT OBJECT_NAME(1205579333,DB_ID('test2')),OBJECT_ID('test2.dbo.person');

--13、USER_ID():根据指定用户名返回数据库用户的ID,如果没有指定用户名,则返回当前用户的数据库ID;
SELECT USER_ID();

--14、USER_NAME():根据与数据库用户关联的ID返回数据库用户名,返回值类型为nvarchar(256);
SELECT USER_NAME(),USER_NAME(USER_ID());
















内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql server 函数 select