Sql server函数的学习1(系统变量、错误函数、转换函数)
一、系统变量的介绍和使用
1、@@ERROR 变量
2、@@SERVICENAME 变量
3、@@TOTAL_ERRORS 变量
4、@@TOTAL_READ 变量
5、@@VERSION 变量
二、错误函数的介绍和使用
1、错误捕获的使用(try/catch)
2、错误函数使用
3、错误函数的说明
- ERROR_MESSAGE():返回错误的描述
- ERROR_NUMBER(): 返回错误的错误号
- ERROR_SEVERITY(): 返回错误的错误级别
- ERROR_STATE():返回错误的错误状态
- ERROR_LINE(): 返回错误的错误行号
- ERROR_PROCEDURE(): 返回发生错误的存储过程名和触发器名
4、错误级别的说明
三、转换函数的介绍和使用
1、CAST()函数
2、CONVERT()函数
3、STR()函数
一、系统变量的介绍和使用
1、@@ERROR 变量
@@ERROR ,这个变量包含当前连接发生的最后一次错误的代码。在执行的语句没有错误时,@@ERROR变量的值是0。出现标准错误时,
错误是由数据库引擎引发的。所有的标准错误代码与消息都保存在sys.messages系统视图中
1)查询数据库中标准错误代码和消息
先试着将一个数除以0,数据库引擎会引发标准错误号为8134的错误。注意查看Results选项卡中的查询结果。
2)@@ERROR变量的使用
返回编制错误号为8134(代表遇到以零做除数错误的代码编号)
3)检查更多错误信息(多种语言)
4)检查错误信息的地区、名称、语言id
2、@@SERVICENAME 变量
这个变量是用于执行和维护当前SQL Server实例的Windows服务名。它通常返回SQL Server默认实例MSSQLSERVER,
但SQL Server的指定实例有唯一的服务名。
1)获取数据库的服务名称
3、@@TOTAL_ERRORS 变量
这个变量用于记录从打开当前连接开始发生的总错误次数。和@@ERROR变量一样,它对每个用户会话是唯一的,
并将在连接关闭时被重置。
1)查看连接总错误次数
4、@@TOTAL_READ 变量
这个变量记录从打开当前连接时开始计算的磁盘读取总数。DBA使用这个变量查看磁盘读取活动的情况
1)查看磁盘读取总数
5、@@VERSION 变量
这个变量包含当前SQL Server实例的完整版本信息
1)获取sql sever的版本信息
二、错误函数介绍和使用
1、错误捕获的使用
数据sql 用try/catch函数来捕获错误
2、错误函数的使用
例子如下:
3、错误函数说明
4、错误级别说明
三、转换函数的介绍和使用
数据类型转换可以通过CAST()和CONVERT()函数来实现,任何可以转换的值都可以用简单的函数实现转换,CAST()函数和CONVERT()函数
都不能执行四舍五入或截断操作
使用数据表的数据
1、CAST()函数
CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型
1)Cast()函数的简单用法
2)Cast()在数据表中用法
用来将日期格式转换为字符串格式
2、Convert ()函数
对于简单类型转换,CONVERT()函数和CAST()函数的功能相同,只是语法不同。CAST()函数一般更容易使用,其功能也更简单。
CONVERT()函数的优点是可以格式化日期和数值,它需要两个参数:第1个是目标数据类型,第2个是源数据。
1、Convert()使用
1)Convert()函数的简单使用
2)Convert()函数在数据表使用
3)日期格式代码表(Convert()的第三个函数)
如:Convert(varchar(20),GetDate(),120),其中120代表输出日期格式为yyyy-MM-dd HH:mm:ss
注意:
1. 1、 这些样式值将返回不确定的结果。包括所有 (yy)(不带世纪数位)样式和一部分 (yyyy)(带世纪数位)样式。
2. 2、 默认值(style 0 或 100、9 或 109、13 或 113、20 或 120 以及 21 或 121)始终返回世纪数位 (yyyy)。
3. 3、 转换为 datetime 时输入;转换为字符数据时输出。
4. 4、 为用于 XML 而设计。对于从 datetime 或 smalldatetime 到字符数据的转换,其输出格式如上一个表所述。
5. 5、 回历是有多种变体的日历系统。SQL Server 使用科威特算法。
a) 默认情况下,SQL Server 基于截止年份 2049 年来解释两位数的年份。换言之,就是将两位数的年份 49 解释为 2049,将两位数的年份 50 解释为 1950。许
许 多客户端应用程序(如基于自动化对象的应用程序)都使用截止年份 2030 年。SQL Server 提供了“两位数年份截止”配置选项,可通过此选项更改 SQL Server
使 使用的截止年份,从而对日期进行一致处理。建议您指定四位数年份。
6. 6、 仅支持从字符数据转换为 datetime 或 smalldatetime。仅表示日期或时间成分的字符数据转换为 datetime 或 smalldatetime 数据类型时,未指定的时间
成分设置为 00:00:00.000,未指定的日期成分设置为 1900-01-01。
7. 7、 使用可选的时间区域指示符 (Z) 更便于将具有时区信息的 XML datetime 值映射到没有时区的 SQL Server datetime 值。Z 是时区 UTC-0 的指示符。
其他时区则以 + 或 - 方向的 HH:MM 偏移量来指示。例如:2006-12-12T23:45:12-08:00。
3、STR()函数
这是一个将数字转换为字符串的快捷函数。这个函数有3个参数:数值、总长度和小数位数。如果数字的整数位数和小数位数(要加上小数点占用的一个字符)
的总和小于总长度,对结果中左边的字符将用空格填充。
1、STR()的简单使用
Sql server函数的学习1(系统变量、错误函数、转换函数)的更多相关文章
- SQL Server中的20个系统变量
1.@@CONNECTIONS返回自上次启动 Microsoft SQL Server以来连接或试图连接的次数.示例:下面的示例显示了到当前日期和时间为止试图登录的次数.SELECT GETDATE( ...
- SQL Server中的临时表和表变量
SQL Server中的临时表和表变量 作者:DrillChina出处:blog2008-07-08 10:05 在SQL Server的性能调优中,有一个不可比拟的问题:那就是如何在一段需要长时间的 ...
- 【转】SQL Server、Oracle、MySQL和Vertica数据库常用函数对比
SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 1. 绝对值 S:select abs(-1) valu ...
- [转] SQL SERVER拼接字符串(字符串中有变量)
本文转自:http://blog.csdn.net/sikaiyuan2008/article/details/7848926 SQL SERVER拼接字符串(字符串中有变量)对我来说是一个难点,总是 ...
- mysql与sql server参照对比学习mysql
mysql与sql server参照对比学习mysql 关键词:mysql语法.mysql基础 转自桦仔系列:http://www.cnblogs.com/lyhabc/p/3691555.html ...
- SQL Server数据库入门学习总结
数据库基本是由表,关系,操作组成:对于初学者,首先要学的是: 1.数据库是如何存储数据的 —— 表.约束.触发器 2.数据库是如何操作数据的 —— insert,update,delete.T-sql ...
- SQL Server中的临时表和表变量 Declare @Tablename Table
在SQL Server的性能调优中,有一个不可比面的问题:那就是如何在一段需要长时间的代码或被频繁调用的代码中处理临时数据集?表变量和临时表是两种选择.记得在给一家国内首屈一指的海运公司作SQL Se ...
- sql server中的临时表、表变量和公用表表达式
在编写T-SQL语句的时候,SQL Server提供了三种方法临时存储某些结果集,分别是临时表.表变量和公用表表达式. 临时表 临时表需要在临时数据库TempDB中通过I/O操作来创建表结构,一旦用户 ...
- SQL Server 2008 R2——学习/练习/错误/总结/搜集
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- 转载---SQL Server XML基础学习之<5>--XQuery(query)
本章写一些SQL Server XML的一些XQuery基础语法,主要讲的query查询语法 T-SQL 支持用于查询 XML 数据类型的 XQuery 语言的子集. XQuery 基于现有的 XPa ...
随机推荐
- 依赖倒置(DIP)与依赖注入(DI)
依赖倒置原则(Dependency Inversion Principle)为我们提供了降低模块间耦合度的一种思路,依赖注入(Dependency Injection)是一种具体的实施方法. 依赖倒置 ...
- Git Shell 基本命令(官网脱水版)
用户信息 当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址. 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改: $ git conf ...
- 《Entity Framework 6 Recipes》中文翻译系列 (43) ------ 第八章 POCO之使用POCO加载实体
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 8-2 使用POCO加载关联实体 问题 你想使用POCO预先加载关联实体. 解决方 ...
- spring官网下载
1.第一步:打开官网:http://projects.spring.io/ 2.第二步:点击“SPRING FRAMEWORK”图片 3.第三步:点击“小猫”图标 4.第四步:拉到页面中部的位置,找到 ...
- iOS-提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- 3D旋转菜单
今天来个3D旋转菜单,是纯css3实现的,主要用到transform,transition,backface-visibility. 主要是transform这个变换,它是今天猪脚. transfor ...
- SQL Server 数据库子查询基本语法
一.SQL子查询语句 1.单行子查询 select ename,deptno,sal from emp where deptno=(select deptno ...
- LINQ to Entities 不支持 LINQ 表达式节点类型“ArrayIndex”
我就不屁话,能一张图就解决的就不说话了 2015-03-28 14:53:24,440 [10] ERROR log - System.NotSupportedException: LINQ to E ...
- Python第一天 - list\字符串截取
(一)list截取L =['Adam', 'Lisa', 'Bart'] print(L[0:3]) ======>['Adam'(idnex:0), 'Lisa'(index:1), 'Bar ...
- Android 生成LayoutInflater的三种方式
通俗的说,inflate就相当于将一个xml中定义的布局找出来. 因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组 ...