《Oracle数据库技术与应用》课件-CORE-02_第1页
《Oracle数据库技术与应用》课件-CORE-02_第2页
《Oracle数据库技术与应用》课件-CORE-02_第3页
《Oracle数据库技术与应用》课件-CORE-02_第4页
《Oracle数据库技术与应用》课件-CORE-02_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目标了解Oracle数据库类型,建立Oracle数据库对象的基本步骤理解数据类型在数据库设计中的地位及使用方法掌握Oracle常用的数据类型、常用的函数,熟练使用OracleOracleSQL数据类型Oracle的数据类型主要有:标量类型(Scalar)复合类型(Composite)参照类型(Reference)LOB类型(LargeObject)本章在数据类型方面主要掌握基本数据类型:标量数据类型标量数据类型类型说明char(n)定长字符类型,n=1to2000字节varchar2(n)变长字符类型,n=1to4000字节number(m,n)可变长的数值类型,m是所有有效数字的位数,n是小数点以后的位数date日期和时间类型,缺省格式:DD-MON-YYlong变长字符类型,最大长度限制是2GBraw(n)变长二进制数据类型,n=1to2000longraw变长二进制数据类型,最大长度是2GBboolean布尔数据类型,其值为TRUE、FALSE、NULL,非表列数据类型,是PL/SQL数据类型binary_integer整数类型,取值范围为:-2147483647和2147483647之间,是PL/SQL数据类型,不能用于表列Oracle内置函数主要的函数分类有:数字函数字符函数日期函数转换函数集合函数分组函数等数字函数数字函数的输入参数和返回值都是数字型selectABS(-100)fromdual;ABS(n)返回数字n的绝对值selectFLOOR(15.1)fromdual;FLOOR(n)返回小于等于数字n的最大整数selectCEIL(10.3)fromdual;CEIL(n)返回大于等于数字n的最小整数

数字函数selectMOD(10,3)fromdual;MOD(m,n)返回两个数字相除后的余数selectPOWER(-2,3)fromdual;POWER(m,n)返回数字m的n次幂

selectROUND(99.989,2)fromdual;ROUND(n,[m])执行四舍五入运算,m为要保留的小数位数

数字函数selectSIN(0.3)fromdual;SIN(n)返回数字n的正弦值(以弧度表示角)

selectCOS(0.5)fromdual;COS(n)返回数字n的余弦值

selectLOG(2,8)fromdual;LOG(m,n)返回数字m为底的数字n的对数

字符函数字符函数输入的参数是字符类型,返回值是数字类型或字符类型selectASCII(‘a’)fromdual;ASCII(char)返回字符串首字符的ASCII码值

selectCHR(56)fromdual;CHR(n)将ASCII码值转为字符

selectCONCAT(‘Good’,‘morning’)fromdual;CONCAT(char1,char2)将两个字符串连接

字符函数selectLENGTH(‘wish’)fromdual;LENGTH(char)返回字符串的长度

selectLOWER(‘SQL’)fromdual;LOWER(char)将字符串转为小写

selectUPPER(‘sql’)fromdual;UPPER(char)将字符串转为大写

字符函数selectSUBSTR(‘good’,1,2)fromdual;SUBSTR(char,m[,n])返回字符串中指定位置的子串

selectINSTR(‘wish’,‘s’)fromdual;INSTR(char1,char2[,n[,m]])返回子串在字符串中的位置

selectTRIM(‘sql’)fromdual;TRIM(char)将字符串左右空格清除

日期和时间函数selectSYSDATEfromdual;SYSDATE返回系统当前日期

selectCURRENT_DATEfromdual;CURRENT_DATE返回当前会话时区所对应的日期时间

selectEXTRACT(yearfromsysdate)fromdual;EXTRACT从日期时间值中取得特定数据

日期和时间函数selectADD_MONTHS(sysdate,1)fromdual;ADD_MONTHS(d,n)返回特定日期时间d加上n个月后的日期时间

selectNEXT_DAY(sysdate,‘星期一’)fromdual;NEXT_DAY(d,char)返回指定日期后的第一个指定工作日所对应的日期

selectLAST_DAY(sysdate)fromdual;LAST_DAY(d)返回特定日期所在月份最后一天

转换函数转换函数:将数值从一种数据类型转换为另一种数据类型selectTO_CHAR(n’星期一’)fromdual;TO_CHAR(char)将NCHAR,NVARCHAR2等转换成数据库字符集数据

selectTO_CHAR(sysdate,‘yyyy-mm-dd’)fromdual;TO_CHAR(date,fmt)将日期按指定的日期时间格式转换成字符串

selectTO_DATE(‘2006-09-21’,‘yyyy-mm-dd’)fromdual;TO_DATE(char,fmt)将字符串按指定的格式转换成日期时间数据分组函数分组函数:执行数据的统计或汇总操作计算雇员表中雇员的平均工资selectAVG(sal)fromemp;AVG([ALL|DISTINCT|EXPR])计算平均值

计算雇员表中雇员的总人数selectCOUNT(*)fromemp;COUNT([ALL|DISTINCT|EXPR])计算记录的总计行数

分组函数找出最高工资selectMAX(sal)fromemp;MAX([ALL|DISTINCT|EXPR])取得列或表达式的最大值

找出最低工资selectMIN(sal)fromemp;MIN([ALL|DISTINCT|EXPR])取得列或表达式的最小值计算工资总额selectSUM(sal)fromemp;SUM([ALL|DISTINCT|EXPR])取得列或表达式的值的总和

其它重要的常用函数NVL(expr1,expr2):将空转换为实际值。如果expr1是null,则返回expr2,否则返回expr1。注意expr1和expr2类型要匹配selectNVL(sal,10000.00)fromemp;sequence序列号sequence:自动增长的序列号createsequence定义CREATESEQUENCEempseq--自定义的序列名INCREMENTBY1--每次加几个,即递增的间隔STARTWITH1--从1开始计数NOMAXVALUE--不设置最大值NOCYCLE--一直累加,不循环CACHE10;sequence序列号sequence序列用法CURRVAL:返回sequence的当前值NEXTVAL:增加sequence的值,然后返回sequence值在DML中使用序列INSERTINTOempVALUES(empseq.nextval,‘LEWIS’,‘CLERK’,7902,SYSDATE,1200,NULL,20);

SELECTempseq.currvalFROMDUAL;sequence序列号

使用ALTERSEQUENCE修改序列ALTERSEQUENCEempseqINCREMENTBY10MAXVALUE10000CYCLE

--到10000后从头开始

NOCACHE;使用DROPSEQUENCE删除序列DROPSEQUENCEempseq同义词同义词:是数据库对象,允许给Oracle表取不同的名字,可以大大简化数据库的操作,提高数据库的安全。同义词分为私有同义词和公有同义词。创建同义词语法:Create[public]synonym同义词名forobject其中object可以是:表(table)、视图(view)、快照(snapshot)、序列(sequence)、过程(procedure)、函数(function)、包(package)、对象类型(objecttype)同义词创建私有同义词createsynonymTTCforB.T_trade_current;通过同义词访问数据表select*fromTTCdelete*fromTTC删除同义词建立符合完整性约束表约束主键约束(PRIMARYKEY)外键约束(FOREIGNKEY)唯一约束(UNIQUE)检查约束(CHECK)默认约束(DEFAULT)非空约束(NOTNULL)建立符合完整性约束表--1.建立部门表Createtabledept(deptnonumber(5)primarykey,--主键dnamevarchar2(20)uniquenotnull,--唯一,非空dnumnumber(7)check(enum>0)--检查)--2.建立员工表Createtableemp(Empnonumber(6)primarykey,Enamevarcahr2(30)notnull,Sal

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论