oracle-数据类型讲解PPT学习课件.ppt
《oracle-数据类型讲解PPT学习课件.ppt》由会员分享,可在线阅读,更多相关《oracle-数据类型讲解PPT学习课件.ppt(40页珍藏版)》请在咨信网上搜索。
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Ssm,Oracle,数据类型,单世民,Oracle,数据类型概述,LONG,NVARCHAR2,VARCHAR2,NCHAR,CHAR,RAW,BLOB,LONG RAW,NUMBER,BINARY_FLOAT,BINARY_DOUBLE,BFILE,CLOB,NCLOB,DATE,TIMESTAMP,TIMESTAMP,WITH TIME ZONE,TIMESTAMP,WITH LOCAL TIME ZONE,INTERVAL,YEAR TO MONTH,INTERVAL,DAY TO SECOND,ROWID,UROWID,字符类型,数值类型,二进制类型,日期和时间,类型,LONG,类型,LOB,类型,ROWID/,UROWID,类型,字符类型,概述,Oracle,中的字符数据类型包括,CHAR,、,VARCHAR2,以及带“,N”,的相应变体(,NCHAR,和,NVARCHAR2,),这些字符数据类型能存储,2000,字节或,4000,字节的文本。这些文本会由数据库根据需要在不同的字符集(,character set,)之间进行转换。,CHAR,、,VARCHAR2,、,NCHAR,、,NVARCHAR2,都是以同样的格式进行存储。,字符类型,NLS,(国家语言支持),NLS,全称是,National Language Support,。,NLS,是数据库的一个非常强大的特性,控制着数据的许多方面,最重要的两个方面是:,文本数据持久存储在磁盘上时如何编码,透明地将数据从一个字符集转换到另一个字符集,字符类型,如何查看当前的数据库字符集设定,SELECT,*,FROM,nls_database_parameters,WHERE,parameter=NLS_CHARACTERSET,字符类型,CHARCHAR,是定长字符串类型,总会用空格填充来达到其最大长度。,CHAR,字段最多可以存储,2000,字节的信息。正常情况下,,size,的单位默认为,BYTE,。,CHAR(,size,BYTE,|,CHAR,),字符类型,VARCHAR2VARCHAR2,是变长字符串类型,不会用空格填充至最大长度。此类型最多可存储,4000,字节的信息。,VARCHAR2(,size,BYTE,|,CHAR,),为什么称为,VARCHAR2,而不是,VARCHAR?,也有一个数据类型是,VARCHAR,然而,,Oracle,公司声称他们将来可能会改变,VARCHAR,的字段行为,我们无法知道“改变后的”,VARCHAR,将会如何。所以,当前应尽量避免使用,VARCHAR,字符类型,NCHAR/NVARCHAR2,两种数据类型用于包含,UNICODE,格式数据的字符串,以支持某些应用中对多字节数据的需求。两者的存储字符数上界分别是,2000/4000,字节。,NVARCHAR2,和,NCHAR,与相应的,VARCHAR2,和,CHAR,的区别在于:,文本采用数据库的国家字符集来存储和管理,而不是默认字符集,长度总是字符数,而,CHAR/VARCHAR2,可能会指定是字节还是字符,字符类型,判断:,vchar_col,列可以存储多少字符(每字符,4,字节),?,1000,字符,VARCHAR2,中存储的字节数上界是,4000,。如果选择的字符集中每个字符都要使用,4,个字节来表示,那么,vchar_col,字段只能放下,1000,个字符,CREATE TABLE T(vchar_col VARCHAR2(4000 CHAR);,字符类型,判断:,是否可以如下定义,vchar_col,列,?,不可以,NVARCHAR2,中存储的字节数上界也是,4000,。但是定义时长度参数总是表示字符数,没有字节(,BYTE,)还是字符(,CHAR,)的选择问题,CREATE TABLE T(vchar_col NVARCHAR2(4000 CHAR);,数值类型,NUMBEROracle9i Release 2,及以前的版本只支持一种适合存储数值数据的固有数据类型。在所有的,Oracle,版本中,NUMBER,都得到支持,NUMBER,类型精度可达,38,位。可以存储小到,10e,-130,、大到(但不包括),10e,126,的任何数值,数值类型,NUMBER,精度(,precision,)也称为总位数,取值范围,138,,默认值为,38,,也可以用字符*表示,38,小数位数(,scale,)也称为小数点右边的位数,合法值,-48127,,默认值取决于是否指定了精度。如果没有指定精度,小数位数则默认有最大的取值区间。如果指定了精度,小数位数默认为,0,NUMBER(,precision,scale,),数值类型,判断:,num_col,字段是否可以存储小数?,可以如果没有指定精度,小数位数则默认有最大的取值区间,换句话说,定义,NUMBER,的列会存储浮点数(有小数),CREATE TABLE T(num_col NUMBER);,数值类型,判断:,num_col,字段是否可以存储小数?,不可以如果指定小数位数为,0,,那么相应字段只能存储整数数据(没有小数),CREATE TABLE T(num_col NUMBER(5);,数值类型,判断:,num_col,字段是否可以存储,123456,?,不可以,123456,含有,6,位数字,超过了定义时所规定的精度(,5,位)。因此,可以使用精度来保证某些数据完整性约束。,CREATE TABLE T(num_col NUMBER(5,0);,数值类型,判断:,向,num_col,插入,123.456,,,Oracle,是否会报错?,不会小数位数可以用于控制数值的“舍入”。尽管,123.456,超过了,5,位,但是,Oracle,会利用小数位数将,123.456”,舍入”为只有两位小数,这就得到了,123.46,,再根据精度来验证,123.46,,满足精度要求,CREATE TABLE T(num_col NUMBER(5,2);,数值类型,判断:,向,num_col,插入,1234,,,Oracle,是否会报错?,会数值,1234.00,的总位数超过了,5,位。指定小数位数为,2,时,小数点左边最多只能有,3,位,右边有两位。因此,,1234,超过了定义的精度。,NUMBER(5,2),列的存储范围是,-999.99999.99,CREATE TABLE T(num_col NUMBER(5,2);,数值类型,判断:,是否可以如下定义,num_col,字段?,可以将小数位数定义为负值,作用在于允许对小数点左边的值舍入,CREATE TABLE T(num_col NUMBER(5,-2);,数值类型,判断:,向,num_col,插入,123.456,,数据库会最终存储的数值是多少?,100,就像,NUMBER(5,2),将值舍入为最接近的,0.01,量级一样,,NUMBER(5,-2),会把数值舍入为与之最接近的,100,量级,CREATE TABLE T(num_col NUMBER(5,-2);,数值类型,判断:,向,num_col,插入,1234567,,,Oracle,是否会报错?,不会精度指示了舍入后数值允许有多少位,并使用小数位数来确定如何舍入,CREATE TABLE T(num_col NUMBER(5,-2),数值类型,判断:,NUMBER,数据类型是定长类型?,错,NUMBER,类型是一种变长格式,长度为,022,字节。随着有效数字数字的增加,,NUMBER,类型需要越来越多的存储空间。每增加两位有效数字,就需要另外一个字节的存储空间。,Oracle,存储一个数时,会使用尽可能少的内容来表示。为此,它会存储有效数字、用户指定小数点位置的一个指数,以及有关数值符号的信息,数值类型,BINARY_FLOAT/BINARY_DOUBLE,类型在,Oracle 10g,之前的版本中没有这两种类型。他们就是,IEEE,标准浮点数,用于近似数值,没有,NUMBER,类型精确。,BINARY_FLOAT,BINARY_DOUBLE,浮点数常用于科学计算中,可在硬件(,CPU,芯片)上执行运算,用于科学计算中的实数处理,处理速度会快的多。不过,浮点数不适合于存储金融信息,数值类型,特殊值,特殊值,描述,BINARY_FLOAT_NAN,非,BINARY_FLOAT,类型的数字(,NaN,),BINARY_FLOAT_INFINITY,BINARY_FLOAT,类型的无穷大(,INF,),BINARY_DOUBLE_NAN,非,BINARY_DOUBLE,类型的数字(,NaN,),BINARY_DOUBLE_INFINITY,BINARY_DOUBLE,类型的无穷大(,INF,),数值类型,Oracle,在语法上支持的其他数值数据类型,NUMBER,NUMERIC,(,p,s,),DECIMAL,(,p,s,),DEC,(,p,s,),INTEGER,INT,SMALLINT,FLOAT,(,b,),DOUBLE PRECISION,REAL,二进制类型,数据库中以二进制类型存储的二进制数据不会进行字符集转换,而文本类型需要进行字符集转换,Oracle,支持,3,种数据类型来存储二进制数据,RAW,类型能够存储最多,2000,字节的二进制数据,BLOB,类型也即大对象类型,LONG RAW,类型此类型是为了支持向后兼容性提供的,二进制类型,RAWRAW,类型是一个变长度的二进制串,物理上限是,2000,字节,不能存储可直接显示的字符数据。当使用,SQL*PLUS,等许多工具处理,RAW,数据时,这些,RAW,数据会被隐式地转换为一个,VARCHAR2,类型。,RAW(,size,),二进制类型,判断:,对于仅包含一个,16,字节长,RAW,类型的表,T,,通过,SQL*Plus,,,Oracle,会如何处理如下所示的命令?能成功执行插入字符,abcdef,么?,会成功执行插入操作,但是插入的数据并不是字符串,abcdef,,而是一个,3,字节的,RAW,数据。,SQL*PLUS,将,RAW,类型获取为一个串时,会隐式地调用,RAWTOHEX,函数,而插入串时会隐式地调用,HEXTORAW,函数。,INSERT INTO T VALUES(abcdef);,二进制类型,判断:,对于仅包含一个,16,字节长,RAW,类型的表,T,,通过,SQL*Plus,,,Oracle,会如何处理如下所示的命令?,报错,错误信息为”,invalid hex number”,。,INSERT INTO T VALUES(abcdefgh);,日期类型,Oracle,固有数据类型,DATE,、,TIMESTAMP,和,INTERVAL,是紧密相关的。,DATE,和,TIMESTAMP,类型可以存储固定日期,/,时间。,INTERVAL,类型可以存储一个时间量。,TIMESTAMP,相对于,DATE,的两个优势:,支持小数秒,支持时区,日期类型,判断:,DATE,类型就是用来存储日期(年月日)的?,错,DATE,类型不仅可以用来存储日期,还存储了有关时间的信息,精度可以到达整数秒。,日期类型,DATEDATE,类型是一个,7,字节的定宽日期,/,时间数据类型。它总是包含,7,个属性,包括:世纪、世纪中的哪一年、月份、月份中的哪一天、小时、分钟和秒。,Oracle,使用一种内部格式来表示这些信息。,日期类型,判断:,在书写过程中使用的日期格式会以某种方式影响磁盘上存储的数据,并且会影响数据如何存储?,错格式对数据如何存储根本没有任何影响。格式只是用于将存储,DATE,所用的二进制格式转换为一个串,或者将一个串转换为用于存储,DATE,的二进制格式,对于,TIMESTAMP,和,INTERVAL,也是如此,日期类型,日期类型到底是怎么存储的?,Oracle,以数值方式存储日期。,Oracle,支持儒略历(,Julian date,)。当系统使用儒略历时,它指定一个开始日期为第一天;接下来的一天为第二天等等,每个次日都将计数值增加,1,。,Oracle,所支持的儒略历的开始日期是公元前,4712,年的,1,月,1,日。用户使用熟悉的文本表示方式输入日期,,Oracle,在后台将它们转换成对应的儒略历。此外,儒略历还可以存储时间值,时间以小数值存储在表示日期的整数值之后。,日期类型,使用日期相关的系统变量存储时间信息时,应注意在查询时适当结合使用,TRUNC,函数。,ROWID/UROWID,类型,ROWIDROWID,是数据库中一行的地址。,ROWID,中编入了足够多的信息,足以在磁盘上找到行,以及标识,ROWID,所指向的对象。,ROWID,并不真正存储在行中,而是行的一个推导属性,基于行的物理地址生成。,Oracle,中除了索引组织表(,IOT,)外的所有行都有,ROWID,。,ROWID,主要用于作为物理地址来减少行更新操作的操作代价,加快访问任何表中某一行的速度。,ROWID/UROWID,类型,UROWIDUROWID,是,ROWID,的“近亲”。它用于比如索引组织表(,IOT,)和通过异构数据库网关访问的没有固定,ROWID,的表。,UROWID,基于行的主键生成,是行主键值的一个表示。但是,,UROWID,并不作为一个单独的列存在,而只是作为现有列的一个函数。,LONG,类型,Oracle,中的,LONG,类型有两种:,LONG,文本类型:可以存储,2GB,的文本,LONG RAW,类型:可以存储,2GB,的原始二进制数据,“,不要创建带,LONG,列的表,而应该使用,LOB,列(,CLOB,NCLOB,BLOB,)。支持,LONG,列只是为了保证向后兼容性。”(,Oracle SQL Reference,),大对象类型,Oracle,支持,LOB,或大对象(,Large OBject,)类型共有,4,种,分为两类:,存储在数据库中的,LOB,,也称为内部,LOB,CLOB,NCLOB,BLOB,存储在数据库之外的,LOB,BFILE,小结,数据类型概述,字符类型,数值类型,二进制类型,日期类型,ROWID/UROWID,LONG,类型,大对象类型,- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 数据类型 讲解 PPT 学习 课件
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文