SQL系统函数——系统信息
1、查看信息
1.1、查看编号和名称
select @@SERVERNAME
--SQL SERVER服务器的连接字符串,如:computername\instancename
select @@SERVICENAME
--若为默认实例,则返回MSSQLSERVER;若是命名实例,则返回实例名
改变机器名称后,实例的名称也会跟着变。但是之后会导致本机的内部实例名会跟网络服务名不一致,解决办法如下:
select @@SERVERNAME, SERVERPROPERTY('ServerName')
if serverproperty('servername')<>@@servername
begin
declare @server sysname
set @server=@@servername
exec sp_dropserver @server=@server
--删除这个服务器注册
set @server=cast(serverproperty('servername') as sysname)
exec sp_addserver @server=@server,@local='LOCAL'
--添加当前改过名的服务器注册
end
select HOST_ID() --主机编号
select HOST_NAME()--主机名
select DB_ID('master') --数据库编号
select DB_NAME(1) --数据库名称
select OBJECT_ID('sysobjects') --数据库对象编号
在临时表上用object_id()时,要在临时表前加数据库名
如下:
方法1(错误)
--#temp不是存在当前数据库中的
select object_ID('#temp')
方法2(错误)
--是存在tempdb中,但temdb中没有这个函数
use tempdb
select object_ID('#temp')
方法3(正确)
--MSQL的临时表是存在tempdb中的
select object_ID('tempdb..#temp')
select OBJECT_NAME(1) --数据库对象名称
select File_ID('master') --返回该逻辑文件名的编号
select File_NAME(1) --返回该文件编号的逻辑文件名
select FILEGROUP_ID('primary') --返回文件组编号
select FILEGROUP_NAME(1) --返回文件组名称
select COL_NAME(OBJECT_ID('sysobjects'),1)
--表中列的名称,每个表中列是从…n顺序编号
select INDEX_COL('sysobjects',1,1)
--返回sysobjects中第一个索引第一个键的名称
select APP_NAME() --返回当前使用的工具名称,如:SQL 查询分析器
select @@SPID --返回当前连接在SQL SERVER中的编号
select @@PROCID --在SP中使用,查看自己的ID
1.2、查看登录和用户
select Suser_Sid() --返回登录的SID,可传参,默认返回当前值
select Suser_Sname() --返回登录的名称,可传参,默认返回当前值
select System_User --等价于不带参数的SUER_SNAME()
select User_Id() --返回数据库用户ID,可传参,默认返回当前值
select User_Name() --返回数据库用户名,可传参,默认返回当前值
select User --等价于不带参数的USER_NAME()
select Current_User --等价于不带参数的USER_NAME()
select Session_User --等价于不带参数的USER_NAME()
1.3、查看属性
select Serverproperty('Collation') --查看服务器的属性
select Databasepropertyex('master','Collation') --查看数据库的属性
select Sessionproperty('ANSI_NULLS') --查看当前会话的SET选项
select Objectproperty(1,'IsTable') --查看当前对象的信息
select Filegroupproperty('Primary','IsReadOnly') --查看文件组的属性
select Fileproperty('master','SpaceUsed') --查看文件的属性
select Columnproperty(1,'name','AllowsNull') --查看列属性
select Indexproperty(1,'ncsysobjects','IsClustered') --查看索引属性
select Indexkey_Property(1,2,1,'ColumnId') --查看索引键信息
select Collationproperty('Chinese_PRC_CI_AS','LCID')
--查看排序规则的信息
select Sql_Variant_Property('abc12345','BaseType')
--返回sql_variant类型值的信息
2、NULL相关的
select COALESCE(null,'first',null,'second',null)
--返回众多表达式中第一个非NULL 表达式的值
select NULLIF('123','123')
--在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值
select ISNULL(null,'not null value')
--使用指定的替换值替换NULL
select GetANSINull('master')
--查看SET ANSI_NULL_DFLT_ON 的设置
SQL系统函数——系统信息的更多相关文章
- SQL系统函数的使用(实验五)
SQL系统函数的使用(试验5) 函数在查询语句中的使用 查询员工的姓名和日工资(保留1位小数): 查询并显示部门号为01和02的所有员工的姓名首字及岗位: 查询并显示所有员工的姓名及工龄: 查询199 ...
- ylb:SQL 系统函数
ylbtech-SQL Server: SQL Server-SQL 系统函数 SQL 系统函数 1,ylb:SQL 系统函数 返回顶部 -- ============================ ...
- SQL——系统函数
1) CASE CASE有两种使用形式:一种是简单的CASE函数,另一种是搜索型的CASE函数. [1]简单的 CASE 函数 Format: CASE input_expression WHEN w ...
- sql 系统函数
--查看表备注SELECT a.column_id AS No, a.name AS 列名, isnull(g.[value],'-') AS 说明 FROM sys.columns a left j ...
- Sql Server函数全解<五>之系统函数
原文:Sql Server函数全解<五>之系统函数 系统信息包括当前使用的数据库名称,主机名,系统错误消息以及用户名称等内容.使用SQL SERVER中的系统函数可以在需要的时候获取这些 ...
- Sql Server函数全解(五)之系统函数
系统信息包括当前使用的数据库名称,主机名,系统错误消息以及用户名称等内容.使用SQL SERVER中的系统函数可以在需要的时候获取这些信息.下面介绍系统函数的作用和使用方法. 1.返回表中指定字段的 ...
- sql server 函数详解(5)系统函数
返回表中指定字段的长度 返回表中指定字段的名称 返回数据表达式的数据的实际长度函数 返回数据库的编号 返回数据库的名称 返回数据库当前默认的null值 返回服务器端计算机的标识号 返回服务 ...
- SQL Server 常用的系统函数
Ø 简介 本文主要列举 SQL Server 中常用的一些系统函数,帮助我们在编写 SQL 时忘了某个函数的用法方便查阅.主要分为以下几类函数,更多函数可参考官网. 1. 字符串函数 2. ...
- LINQ to SQL 调用 SQL Server 的系统函数
Ø 简介 在 C# 中比较常用的 ORM(Object Relational Mapping)框架就是 EF 了,EF 经常结合 LINQ to SQL 来操作数据库.本文主要讨论如何在 LINQ ...
随机推荐
- LNMP环境搭建——MySQL篇
The world's most popular open source database 1.Install MySQL root@kallen:~# apt-get install mysql-s ...
- Android平台上直接物理内存读写漏洞的那些事
/* 本文章由 莫灰灰 编写,转载请注明出处. 作者:莫灰灰 邮箱: minzhenfei@163.com */ 通过mmap直接操作物理内存的漏洞应该算是比較常见的一类漏洞了,在2012年.2 ...
- 一个表中的字段值用作另一个表的In查询条件
Question表与Paper表 Paper表中字段QuestionIds存储的是Question表中字段Id的拼接后的值 如: 'f855eba1-b308-4bd7-a250-c071a0e1bd ...
- WCF公开服务元数据方式
一般我们使用了scvutil命令自动生成了服务的客户端代理类: 例如:svcutil http://localhost:8000/?wsdl /o:FirstServiceClient.cs 命令中h ...
- mongodb - save()和insert()的区别
遇到_id相同的情况下:insert操作会报错:save完成保存操作 > db.person.find() > db.person.insert({"_id":1,ag ...
- ftp客户端的创建
1.本段代码采用了 select I/O端口复用 2.含有三种功能:ls, 上传文件, 下载文件.这是拷贝别人的代码,自己添加了注释,随后会进行修改, 自己需要的功能:上传文件, 下载文件, (并 ...
- php 验证访问浏览器是电脑还是手机
//判断如果为手机用户则 if(checkmobile()==true) { $url=$_SERVER["HTTP_HOST"]; $urlHost=GetHost($url); ...
- spring和hibernate整合,事务管理
一.spring和hibernate整合开发步骤 1 引入jar文件,用户libarary列表如下 //spring_core spring3..9core\commons-logging-1.2.j ...
- LFCS 系列第八讲:管理用户和用户组、文件权限和属性以及启用账户 sudo 访问权限
由于 Linux 是一个多用户的操作系统(允许多个用户通过不同主机或者终端访问一个独立系统),因此你需要知道如何才能有效地管理用户:如何添加.编辑.禁用和删除用户账户,并赋予他们足以完成自身任务的必要 ...
- Oracle配置客户端
一.引言 当我们需要连接远程的Oracle数据库服务器时,就需要在自己的机器上安装Oracle客户端了. 二.安装步骤与配置 参考:http://blog.csdn.net/luiseradl/art ...