PL/SQL数据类型及操作符

2016-02-19 09:52 8 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的PL/SQL数据类型及操作符教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 编程语言 】

标量(scalar)数据类型

  标量(scalar)数据类型没有内部组件,他们大致可分为以下四类:

   . number
   . character
   . date/time
   . boolean

  表1显示了数字数据类型;表2显示了字符数据类型;表3显示了日期和布尔数据类型。

  表1 Scalar Types:Numeric
DatatypeRangeSubtypesdescriptionBINARY_INTEGER-214748-2147483647NATURAL
NATURAL
NPOSITIVE
POSITIVEN
SIGNTYPE
用于存储单字节整数。
要求存储长度低于NUMBER值。
用于限制范围的子类型(SUBTYPE):
 NATURAL:用于非负数
 POSITIVE:只用于正数
 NATURALN:只用于非负数和非NULL值
 POSITIVEN:只用于正数,不能用于NULL值
 SIGNTYPE:只有值:-1、0或1.NUMBER1.0E-130-9.99E125DEC
DECIMAL
DOUBLE
PRECISION
FLOAT
INTEGERIC
INT
NUMERIC
REAL
SMALLINT

存储数字值,包括整数和浮点数。可以选择精度和刻度方式,语法:
number[( [,])]。
缺省的精度是38,scale是0.

PLS_INTEGER-2147483647-2147483647 与BINARY_INTEGER基本相同,但采用机器运算时,PLS_INTEGER提供更好的性能 。

  NUMBER 数字型 能存放整数值和实数值,并且可以定义精度和取值范围
  BINARY_INTEGER 数字型 可存储带符号整数,为整数计算优化性能
  DEC 数字型 NUMBER的子类型,小数
  DOUBLE PRECISION 数字型 NUMBER的子类型,高精度实数
  INTEGER 数字型 NUMBER的子类型,整数
  INT 数字型 NUMBER的子类型,整数
  NUMERIC 数字型 NUMBER的子类型,与NUMBER等价
  REAL 数字型 NUMBER的子类型,与NUMBER等价
  SMALLINT 数字型 NUMBER的子类型,取值范围比INTEGER小
  VARCHAR2 字符型 存放可变长字符串,有最大长度

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  表2 字符数据类型

datatyperangsubtypedescriptionCHAR最大长度32767字节 CHARACTER存储定长字符串,如果长度没有确定,缺省是1LONG最大长度2147483647字节 存储可变长度字符串RAW 最大长度32767字节 用于存储二进制数据和字节字符串,当在两个数据库之间进行传递时,RAW数据不在字符集之间进行转换。LONGRAW最大长度2147483647 与LONG数据类型相似,同样他也不能在字符集之间进行转换。ROWID18个字节 与数据库ROWID伪列类型相同,能够存储一个行标示符,可以将行标示符看作数据库中每一行的唯一键值。VARCHAR2最大长度32767字节STRINGVARCHAR与VARCHAR数据类型相似,存储可变长度的字符串。声明方法与VARCHAR相同

  CHAR 字符型 定长字符串
  LONG 字符型 变长字符串,最大长度可达32,767
  DATE 日期型 以数据库相同的格式存放日期值
  BOOLEAN 布尔型 TRUE OR FALSE
  ROWID ROWID 存放数据库的行号

  表3 DATE和BOOLEAN

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)datatyperange descriptionBOOLEANTRUE/FALSE存储逻辑值TRUE或FALSE,无参数DATE01/01/4712 BC 存储固定长的日期和时间值,日期值中包含时间
  LOB数据类型

  LOB(大对象,Large object) 数据类型用于存储类似图像,声音这样的大型数据对象,LOB数据对象可以是二进制数据也可以是字符数据,其最大长度不超过4G。LOB数据类型支持任意访问方式,LONG只支持顺序访问方式。LOB存储在一个单独的位置上,同时一个"LOB定位符"(LOB locator)存储在原始的表中,该定位符是一个指向实际数据的指针。在PL/SQL中操作LOB数据对象使用ORACLE提供的包DBMS_LOB.LOB数据类型可分为以下四类:

  . BFILE
  . BLOB
  . CLOB
  . NCLOB

  操作符

  与其他程序设计语言相同,PL/SQL有一系列操作符。操作符分为下面几类:

  . 算术操作符

  . 关系操作符

  . 比较操作符

  . 逻辑操作符

  算术操作符如表4所示

operatoroperation+ 加- 减/ 除* 乘**乘方
  关系操作符主要用于条件判断语句或用于where子串中,关系操作符检查条件和结果是否为true或false,表5是PL/SQL中的关系操作符

operatoroperation 小于操作符= 小于或等于操作符 大于操作符=大于或等于操作符= 等于操作符 != 不等于操作符 不等于操作符:= 赋值操作符
  表6 显示的是比较操作符
operator operationIS NULL如果操作数为NULL返回TRUELIKE比较字符串值BETWEEN验证值是否在范围之内IN验证操作数在设定的一系列值中
  表7.8显示的是逻辑操作符
operatoroperationAND 两个条件都必须满足OR只要满足两个条件中的一个NOT取反

来源:http://www.tulaoshi.com/n/20160219/1592455.html

延伸阅读
标签: SQLServer
近来在做数据库设计,有时候真弄不清SQL2000里的数据类型,所以摘了这篇文章。 (1)char、varchar、text和nchar、nvarchar、ntext char和varchar的长度都在1到8000之间,它们的区别在于char是定长字符数据,而varchar是变长字符数据。所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到...
区别 C++中对于类来说,对于其中的成员,用点操作符.来获得, 而对于一个指向类对象的指针来说,则用箭头操作符-调用该指针所指向对象的成员。 当类定义-重载操作符后,则既可以用箭头操作符,也可以用点操作符。 重载-操作符 重载箭头操作符必须定义为类成员函数。没有显式形参(而且是类成员,唯一隐式形参是this)。-的右操作数不是...
标签: MySQL mysql数据库
我们要把现实世界中的各种信息转换成计算机能理解的东西,这些转换后的信息就形成了数据。例如,某人的出生日期是“1987年5月23日”,他的身高是170厘米,等等。数据不仅包括数字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包括图形、图像、动画、影像、声音等多媒体数据。但使用最多、最基本的仍然是文本数据。   &n...
标签: ASP
ASP只有一种数据类型那就是"variant "。它是一种特殊的数据类型能够根据它的使用表示很多不同种类的信息。因为它是ASP中唯一的数据类型,它也是ASP中所有函数返回值的唯一类型。它很简单的,"variant"数据类型能够表示数字或者是字符串。当你在ASP程序中把它当做是数字,它就自动转化为"Numeric",如果用它为字符串,它也同样就是"String"了。也...
number(p,s) 精度p取值范围1~38 有效位s取值范围-84~127 最高整数位数=p-s s正数,小数点右边指定位置开始四舍五入 s负数,小数点左边指定位置开始四舍五入 s是0或者未指定,四舍五入到最近整数 当p小于s时候,表示数字是绝对值小于1的数字,且从小数点右边开始的前s-p 位必须是0,保留s位小数。 --num_test start-------------------...

经验教程

838

收藏

10
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部