《Oracle数据库基础应用.ppt》由会员分享,可在线阅读,更多相关《Oracle数据库基础应用.ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章数据类型目标1.了解 Oracle数据类型,建立Oracle数据库对象的基本步骤。2.理解数据类型在数据库设计中的地位及使用方法。3.掌握Oracle常用的数据类型、常用的函数,熟练使用数据类型、约束等创建基本的数据库表,同时深入理解创建同义词、序列的现实意义,同时掌握创建对象需要满足的前提条件(比如:权限的限制)。概述、专业术语1.本章主要介绍Oracle数据库三方面的知识数据类型oracle数据库各种内置函数 在Oracle数据库应用中常用的对象内容 2.通过本章的学习充分掌握Oracle高层次应用必须的基础知识,为高层次应用打下良好的基础 1.术语词汇表2.定义在此章节中使用的术语
2、Oracle SQL数据类型Oracle的数据类型主要有:标量类型(Scalar)复合类型(Composite)参照类型(Reference)LOB类型(Large Object)本章在数据类型方面主要掌握基本数据类型:标量数据类型 标量数据类型类型类型说明说明char(n)定长字符类型,n=1 to 2000字节varchar2(n)变长字符类型,n=1 to 4000字节number(m,n)可变长的数值类型,m是所有有效数字的位数,n是小数点以后的位数date日期和时间类型,缺省格式:DD-MON-YYlong变长字符类型,最大长度限制是2GBraw(n)变长二进制数据类型,n=1 to
3、 2000long raw变长二进制数据类型,最大长度是2GBboolean布尔数据类型,其值为TRUE、FALSE、NULL,非表列数据类型,是PL/SQL数据类型binary_integer整数类型,取值范围为:-2147483647和2147483647之间,是PL/SQL数据类型,不能用于表列Oracle内置函数主要的函数分类有:数字函数字符函数日期函数转换函数集合函数分组函数等数字函数数字函数的输入参数和返回值都是数字型 select ABS(-100)from dual;ABS(n)返回数字返回数字n的绝对值的绝对值select FLOOR(15.1)from dual;FLOOR
4、(n)返回小于等于数字返回小于等于数字n的最大整数的最大整数 select CEIL(10.3)from dual;CEIL(n)返回大于等于数字返回大于等于数字n的最小整数的最小整数 数字函数select MOD(10,3)from dual;MOD(m,n)返回两个数字相除后的余数返回两个数字相除后的余数select POWER(-2,3)from dual;POWER(m,n)返回数字返回数字m的的n次幂次幂 select ROUND(99.989,2)from dual;ROUND(n,m)执行四舍五入运算,执行四舍五入运算,m为要保留的小数位数为要保留的小数位数 数字函数select
5、 SIN(0.3)from dual;SIN(n)返回数字返回数字n的正弦值的正弦值(以弧度表示角以弧度表示角)select COS(0.5)from dual;COS(n)返回数字返回数字n的余弦值的余弦值 select LOG(2,8)from dual;LOG(m,n)返回数字返回数字m为底的数字为底的数字n的对数的对数 字符函数字符函数输入的参数是字符类型,返回值是数字类型或字符类型 select ASCII(a)from dual;ASCII(char)返回字符串首字符的返回字符串首字符的ASCII码值码值 select CHR(56)from dual;CHR(n)将将ASCII码
6、值转为字符码值转为字符 select CONCAT(Good,morning)from dual;CONCAT(char1,char2)将两个字符串连接将两个字符串连接 字符函数select LENGTH(wish)from dual;LENGTH(char)返回字符串的长度返回字符串的长度 select LOWER(SQL)from dual;LOWER(char)将字符串转为小写将字符串转为小写 select UPPER(sql)from dual;UPPER(char)将字符串转为大写将字符串转为大写 字符函数select SUBSTR(good,1,2)from dual;SUBSTR
7、(char,m,n)返回字符串中指定位置的子串返回字符串中指定位置的子串 select INSTR(wish,s)from dual;INSTR(char1,char2,n,m)返回子串在字符串中的位置返回子串在字符串中的位置 select TRIM(sql )from dual;TRIM(char)将字符串左右空格清除将字符串左右空格清除 日期和时间函数select SYSDATE from dual;SYSDATE 返回系统当前日期返回系统当前日期 select CURRENT_DATE from dual;CURRENT_DATE 返回当前会话时区所对应的日期时间返回当前会话时区所对应的
8、日期时间 select EXTRACT(year from sysdate)from dual;EXTRACT 从日期时间值中取得特定数据从日期时间值中取得特定数据 日期和时间函数select ADD_MONTHS(sysdate,1)from dual;ADD_MONTHS(d,n)返回特定日期时间返回特定日期时间d加上加上n个月后的日期时间个月后的日期时间 select NEXT_DAY(sysdate,星期一)from dual;NEXT_DAY(d,char)返回指定日期后的第一个指定工作日所对应的日期返回指定日期后的第一个指定工作日所对应的日期 select LAST_DAY(sys
9、date)from dual;LAST_DAY(d)返回特定日期所在月份最后一天返回特定日期所在月份最后一天 转换函数 转换函数:将数值从一种数据类型转换为另一种数据类型 select TO_CHAR(n星期一)from dual;TO_CHAR(char)将将NCHAR,NVARCHAR2等转换成数据库字符集数据等转换成数据库字符集数据 select TO_CHAR(sysdate,yyyy-mm-dd)from dual;TO_CHAR(date,fmt)将日期按指定的日期时间格式转换成字符串将日期按指定的日期时间格式转换成字符串 select TO_DATE(2006-09-21,yyy
10、y-mm-dd)from dual;TO_DATE(char,fmt)将字符串按指定的格式转换成日期时间数据将字符串按指定的格式转换成日期时间数据分组函数分组函数:执行数据的统计或汇总操作 计算雇员表中雇员的平均工资select AVG(sal)from emp;AVG(ALL|DISTINCT|EXPR)计算平均值计算平均值 计算雇员表中雇员的总人数select COUNT(*)from emp;COUNT(ALL|DISTINCT|EXPR)计算记录的总计行数计算记录的总计行数 分组函数找出最高工资select MAX(sal)from emp;MAX(ALL|DISTINCT|EXPR)
11、取得列或表达式的最大值取得列或表达式的最大值 找出最低工资select MIN(sal)from emp;MIN(ALL|DISTINCT|EXPR)取得列或表达式的最小值取得列或表达式的最小值计算工资总额select SUM(sal)from emp;SUM(ALL|DISTINCT|EXPR)取得列或表达式的值的总和取得列或表达式的值的总和 其它重要的常用函数NVL(expr1,expr2):将空转换为实际值。如果expr1是null,则返回expr2,否则返回expr1。注意expr1和expr2类型要匹配 select NVL(sal,10000.00)from emp;sequenc
12、e序列号sequence:自动增长的序列号create sequence 定义CREATE SEQUENCE empseq -自定义的序列名INCREMENT BY 1 -每次加几个,即递增的间隔START WITH 1 -从1开始计数 NOMAXVALUE -不设置最大值 NOCYCLE -一直累加,不循环 CACHE 10;sequence序列号sequence序列用法CURRVAL:返回 sequence的当前值 NEXTVAL:增加sequence的值,然后返回 sequence 值 在DML中使用序列INSERT INTO emp VALUES(empseq.nextval,LEWI
13、S,CLERK,7902,SYSDATE,1200,NULL,20);SELECT empseq.currval FROM DUAL;sequence序列号 使用ALTER SEQUENCE修改序列ALTER SEQUENCE empseq INCREMENT BY 10 MAXVALUE 10000 CYCLE-到10000后从头开始 NOCACHE;使用 DROP SEQUENCE删除序列DROP SEQUENCE empseq同义词同义词:是数据库对象,允许给Oracle表取不同的名字,可以大大简化数据库的操作,提高数据库的安全。同义词分为私有同义词和公有同义词。创建同义词语法:Crea
14、te public synonym 同义词名 for object其中object可以是:表(table)、视图(view)、快照(snapshot)、序列(sequence)、过程(procedure)、函数(function)、包(package)、对象类型(object type)同义词创建私有同义词 create synonym TTC for B.T_trade_current;通过同义词访问数据表select *from TTCdelete*from TTC删除同义词建立符合完整性约束表约束主键约束(PRIMARY KEY)外键约束(FOREIGN KEY)唯一约束(UNIQUE)
15、检查约束(CHECK)默认约束(DEFAULT)非空约束(NOT NULL)建立符合完整性约束表-1.建立部门表Create table dept(deptno number(5)primary key,-主键dname varchar2(20)unique not null,-唯一,非空dnum number(7)check(enum 0)-检查)-2.建立员工表 Create table emp(Empno number(6)primary key,Ename varcahr2(30)not null,Sal number(10,2)check(sal800)Deptno number(5),Constraint fk-deptno foreign key(deptno)References dept(deptno)-外键)总结1.牢记Oracle数据库常用数据类型2.牢记Oracle常用的内置函数数字函数字符函数日期时间函数转换函数3.熟练使用数据库的基本对象,如序列号、同义词,包括对象的创建、使用、删除等。