1.Oracle数据库入门.pptx

上传人:可**** 文档编号:76752240 上传时间:2023-03-12 格式:PPTX 页数:46 大小:1.92MB
返回 下载 相关 举报
1.Oracle数据库入门.pptx_第1页
第1页 / 共46页
1.Oracle数据库入门.pptx_第2页
第2页 / 共46页
点击查看更多>>
资源描述

《1.Oracle数据库入门.pptx》由会员分享,可在线阅读,更多相关《1.Oracle数据库入门.pptx(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Oracle数据库入门线上线下平台预习2/46本章任务安装Oracle数据库创建员工表和部门表,并对表中数据进行CRUD操作对员工表进行分页查询按照业务的需要,使用SQL语言对员工信息数据进行查询3/46本章目标理解数据库基本概念掌握安装、配置和连接数据库了解数据类型和操作符会使用SQL语句对数据进行操作会使用常用内置函数4/46Oracle简介Oracle(甲骨文)公司1977年,三人合伙创办(Software Development Laboratories,SDL)1979年,更名为Relational Software Inc.,RSI1983年,为了突出核心产品,RSI更名为Orac

2、le2002年04月26日,启用“甲骨文”作为中文注册商标Oracle数据库管理系统Oracle公司的核心产品 目前最流行的数据库主要版本Oracle8i/9i(internet)、Oracle10g/11g(grid)基于C/S系统结构 5/46Oracle 主要组件 实实 例例 PMONSMONDBWRLGWRCKPT其他其他 数据文件数据文件控制文件控制文件控制文件控制文件日志文件日志文件日志文件日志文件参数文件参数文件归档日志文件归档日志文件口令文件口令文件SGA用户进程用户进程服务器进程服务器进程PGA共享池共享池数据缓冲区数据缓冲区日志缓冲区日志缓冲区内存结构内存结构后台进程后台进

3、程数据库数据库数据文件数据文件数据文件数据文件6/46数据库数据库表空间表空间1 1表空间表空间2 2表空间表空间1 1包含包含1 1个数据文件个数据文件表空间表空间2 2包含包含2 2个数据文件个数据文件data1_01.dbfdata2_01.dbfdata2_02.dbfOracle基本概念表空间全局数据库名 用于区分一个数据库的内部标识全局数据库名=数据库名+域名使数据库的取名在整个网络环境中唯一模式和模式对象模式为模式对象的集合每一个用户对应一个模式模式对象是用户拥有的对象非模式对象与用户无关,如表空间7/46安装Oracle安装注意事项选择安装目录最好是非系统盘选择安装目录最好是非

4、系统盘选择安装目录最好是非系统盘选择安装目录最好是非系统盘安装时可以直接创建数据库,也可以选择不创建安装时可以直接创建数据库,也可以选择不创建安装时可以直接创建数据库,也可以选择不创建安装时可以直接创建数据库,也可以选择不创建服务器的主机名不能有特殊字符服务器的主机名不能有特殊字符服务器的主机名不能有特殊字符服务器的主机名不能有特殊字符如果在创建数据库阶段提示错误,继续安装如果在创建数据库阶段提示错误,继续安装如果在创建数据库阶段提示错误,继续安装如果在创建数据库阶段提示错误,继续安装输入的数据库口令最好记录在记事本中,以免使用时忘记输入的数据库口令最好记录在记事本中,以免使用时忘记经验123

5、48/46启动、配置和链接数据库 根据安装时创建数据库ORCL,使用Sytem用户登录前做哪些工作?启动数据库服务配置客户端网络服务每个数据库都有SYS和SYSTEM两个默认用户,都具有创建用户权限使用SYSTEM用户登录ORCL数据库问题分析9/46启动数据库服务通过选择打开“服务”窗口,可以看到Oracle服务OracleService:数据库服务OracleOraDb11g_hom1TNSListener:数据库监听服务OracleDBConsole:企业管理器服务演示示例1:查看Oracle服务10/46配置客户端网络服务服务器端配置监听器客户端配置网络服务名tnsnames.oraO

6、racle 客户端客户端listener.oraOracle 服务器服务器监听协议监听协议地址地址端口号端口号全局数据库名称全局数据库名称监听协议监听协议地址地址端口号端口号服务名服务名本地网络服务名本地网络服务名在安装服务器软件时自动配置一个监听器Oracle中的 Net Manager工具和Net Configuration Assistant都能用来配置监听器和网络服务名建议使用建议使用Net ManagerNet Manager工具工具注意演示示例2:连接数据库配置11/46SYS和SYSTEM用户 SYS和SYSTEM用户都是Oracle 的系统用户,都使用SYSTEM表空间,SYS

7、拥有更大的权限通过SQL*Plus方式连接 通过PL/SQL Developer方式连接连接数据库SYS用户用户SYSTEM用户用户地位地位Oracle的一个超级用户的一个超级用户Oracle默认的系统管理员,拥有默认的系统管理员,拥有DBA权权限限作用作用主要用来维护系统信息和管理实例主要用来维护系统信息和管理实例 通常用来管理通常用来管理Oracle数据库的用户、数据库的用户、权限和存储等权限和存储等登录身份登录身份只能以只能以SYSDBA或或SYSOPER角色登录角色登录只能以只能以Normal方式登录方式登录12/46学员操作配置并登录ORCL数据库2-1训练要点启动数据库配置数据库连

8、接数据库需求说明教师机作为服务器,学生机作为客户端在客户端创建本地网络服务名myOrcl以System用户连接服务器的Orcl数据库访问Scott用户下的emp表指导技术顾问讲解需求13/46学员操作配置并登录ORCL数据库2-2实现思路服务器端启动操作系统中的数据库服务和监听服务客户端使用“Net Manager”工具创建本地网络服务名“myOrcl”客户端使用SQL*Plus工具,用System用户连接Orcl数据库访问Scott用户下emp表 使用PL/SQL Developer工具,以System用户连接Orcl数据库访问Scott用户下emp表SELECT*FROMScott.emp

9、;指导完成时间:20分钟14/46共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解 15/46小结使用 Oracle 数据库的开发流程安装安装 OracleOracle 服务器软件服务器软件创建数据库创建数据库(安装时自动创建安装时自动创建)配置监听器配置监听器(安装时自动配置安装时自动配置)启动启动OracleOracle实例实例(自动启动服务自动启动服务)创建用户表空间创建用户表空间创建新用户并授权创建新用户并授权安装安装Oracle客户端软件客户端软件配置网络服务名配置网络服务名以新用户登录以新用户登录Oracle提交提交SQL查询查询服务器端客户端后面章节讲解后面

10、章节讲解16/46数据类型CHAR:VARCHAR2:NCHAR和和NVARCHAR2:NUMBER:字符数据类型字符数据类型数值数据类型数值数据类型存储固定长度的字符串存储可变长度的字符串存储Unicode字符集类型存储整数和浮点数,格式为NUMBER(p,s)数据类型数据类型描述描述DATE:TIMESTAMP:BLOB:CLOB:BFILE:LOBLOB数据类型数据类型DATE:存储日期和时间数据 TIMESTAMP:秒值精确到小数点后6位存储二进制对象存储字符格式的大型对象 将二进制数据存储操作系统文件中日期时间数据日期时间数据类型类型不建议使用不建议使用VARCHAR、INTEGER

11、、FLOAT、DOUBLE等类型等类型经验17/46伪列Oracle 中伪列就像一个表列,但是它并没有存储在表中伪列可以从表中列可以从表中查询,但不能插入、更新和,但不能插入、更新和删除它除它们的的值常用的常用的伪列有列有ROWID和和ROWNUMROWID格式ROWID是表中行的存储地址,该地址可以唯一地标识数据库中的一行,可以使用是表中行的存储地址,该地址可以唯一地标识数据库中的一行,可以使用ROWID伪列伪列快速地定位表中的一行快速地定位表中的一行AAAR3sAAEAAAACXAAA数据对象编号数据对象编号文件编号文件编号块编号块编号行编号行编号ROWNUM是查询返回的结果集中行的序号,

12、可以使用它来限制查询返回的行数是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数如何查询stuInfo表中自然排序的第3条记录?提问演示示例1:查询ROWID伪列演示示例2:查询ROWNUM伪列18/46分页如何从EMP表中查询出薪水从高到低排序的第59条记录?使用伪列ROWNUM实现分页查询SELECT*FROM(SELECTe.*,rownumrnFROM(SELECT*FROMempORDERBYsalDESC)e)WHERE rn=5ANDrn100万的表的信息选择无重复的行选择带条件和排序的记录实用列别名利用现有的表创建新表问题演示示例3:创建stuInfo表22/46数据

13、操纵语言4-1不重复显示所有学员姓名和年龄按照姓名升序,如果姓名相同按照年龄降序排序SQLSELECTstuNo,stuName,stuAgeFROMstuInfoWHEREstuAge17ORDERBYstuNameASC,stuAgeDESC;SQLSELECTDISTINCTstuName,stuAgeFROMstuInfo;降序降序示例演示示例4:操纵stuInfo表23/46升升序序数据操纵语言4-2使用别名显示姓 名、年 龄和身份证号列利用现有的表创建新表SQLCREATETABLEnewStuInfo1ASSELECT*FROMStuInfo;选择所有数据选择所有数据SQLSEL

14、ECTstuNameas姓姓名名,stuAgeas年年龄龄,stuIDas身份证号身份证号FROMStuInfo;含有特殊字符(如空格)加双引号含有特殊字符(如空格)加双引号SQLCREATETABLEnewStuInfo2ASSELECTstuName,stuNo,stuAgeFROMStuInfo;SQLCREATETABLEnewStuInfo2ASSELECTstuName,stuNo,stuAgeFROMStuInfoWHERE1=2;选择指定的列所有数据选择指定的列所有数据只留表结构,不留数据只留表结构,不留数据示例24/46数据操纵语言4-3查看表中行数取出stuName,stu

15、Age列不存在重复数据的记录SQLSELECTstuName,stuAgeFROMstuInfoGROUPBYstuName,stuAgeHAVING(COUNT(stuName|stuAge)SELECTCOUNT(*)FROMstuInfo;执行效率高执行效率高SQLSELECTCOUNT(1)FROMstuInfo;执行效率低执行效率低示例25/46数据操纵语言4-4删除stuName、stuAge列重复的行(保留一行)SQLDELETEFROMstuInfoWHEREROWIDNOTIN(SELECTmax(ROWID)FROMstuInfoGROUPBYstuName,stuAge)

16、;示例26/46事务控制语言2-1用于事务控制的语句SQLINSERTINTOdeptVALUES(50,a,null);SQLINSERTINTOdeptVALUES(60,b,null);SQLSAVEPOINTa;SQLINSERTINTOdeptVALUES(70,c,null);SQLROLLBACKTOSAVEPOINTa;SQLCOMMIT;SQLSELECT*FROMdept;下列代码执行后,结果集是否包含50、60和70的记录?为什么?COMMITROLLBACKSAVEPOINTROLLBACKTO提问演示示例5:事务控制语言27/46事务控制语言2-2何时结束事务?数据被

17、提交COMMIT命令执行DDL或DCL后与Oracle分离数据被撤消ROLLBACK命令服务器进程异常结束DBA停止会话28/46学员操作创建员工表并进行操作2-1训练要点创建员工表插入、查询数据添加约束添加、删除列需求说明使用System用户登录,创建员工表employee为员工编号创建主键约束,部门编号列创建外键约束根据提供的资料插入数据,显示员工表中薪水从高到低排序记录指导技术顾问讲解需求29/46学员操作创建员工表并进行操作2-2实现思路使用System用户连接ORCL数据库创建employee表插入数据可以直接插入数据,也可以利用SCOTT用户下emp中的数据进行插入添加约束向emp

18、loyee 表添加empTel_no 和empAddress 两列删除empTel_no 和empAddress 两列按照薪水从高到低显示数据指导完成时间:15分钟30/46学员操作实现分页查询需求需求说明使用System用户登录,根据employee表现有记录,实现查询员工表中薪水从高到低排序的第59条记录练习完成时间:15分钟31/46共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解 32/46小结Oracle SQL语言分为DDL、DCL、TCL和DMLDDL对表结构进行管理DML对表数据进行管理TCL进行事务控制DML进行用户权限管理33/46SQL 操作符SQL

19、操作符操作符集合操作符集合操作符逻辑操作符逻辑操作符比较操作符比较操作符算术操作符算术操作符连接操作符连接操作符Oracle 支持的 SQL 操作符分类集合操作符UNION(联合)UNION ALL(联合所有)INTERSECT(交集)MINUS(减集)连接连接2 2个字符串;个字符串;连接字符串和数字等连接字符串和数字等演示示例6:操作符示例34/46SQL函数SQL函数 01.01.单行函数每一行只返回一个值可以出现在SELECT子句中和 WHERE子句中 03.分析函数分析函数根据一组行来计算聚合值分析函数为每组记录返回多个行02.分组函数根据分组的情况,返回每组里的一个结果值可以在使用

20、ORDERBY和 HAVING子句中使用日期函数日期函数数字函数数字函数字符函数字符函数转换函数转换函数其他函数其他函数35/46转换函数转换函数将值从一种数据类型转换为另一种数据类型常用的转换函数TO_CHAR()TO_DATE()TO_NUMBER()SELECTTO_CHAR(sysdate,YYYY年年fmMM月月fmDD日日HH24:MI:SS)FROMdual;SELECTTO_CHAR(1210.7,$9,999.00)FROMdual;SELECTTO_DATE(2005-12-06,yyyy-mm-dd)FROMdual;SELECTTO_NUMBER(100)FROMdua

21、l;示例演示示例7:转换函数36/46其它函数转换空值的函数NVLNVLDECODESELECTename,sal+NVL(comm,0)sal1,NVL2(comm,sal+comm,sal)sal2,DECODE(to_char(hiredate,MM ),01,一月一月,02,二月二月,03,三月三月,04,四月四月,05,五月五月,06,六月六月,下半年下半年)mon FROMemployee;演示示例8:其他函数示例37/46分析函数分析函数根据一组行来计算聚合值分析函数为每组记录返回多个行以下三个分析函数用于计算一个行在一组有序行中的排位,序号从1开始返回连续的排位,不论值是否相等

22、具有相等值的行排位相同,序数随后跳跃 具有相等值的行排位相同,序号是连续的RANKRANKDENSE_RANKDENSE_RANKROW_NUMBERROW_NUMBER函数名:分析函数名字参数:函数需要传入的参数分区子句(PARTITIONBY):将查询结果分为不同的组,功能类似于GROUPBY语句 排序子句(ORDERBY):将每个分区进行排序例:例:函数名函数名(参数参数)OVER(分区子句分区子句排序子句排序子句)RANK()OVER(PARTITIONBYdeptnoORDERBYsalDESC)语法演示示例9:分析函数38/46学员操作使用分析函数进行查询需求说明公司需要查询每个部

23、门薪水第二高的员工基本信息(包含并列第二)实现步骤使用分析函数将员工按照部门分组并且组内排序在上面结果集中选择排序编号为2的员工信息练习完成时间:15分钟39/46学员操作SQL语言综合练习2-1训练要点SELECT语句WHERE 语句GROUP BY语句ORDER BY 语句函数需求说明公司要获得员工相关信息指导技术顾问讲解需求40/46学员操作SQL语言综合练习2-2实现思路显示职员的就职年度使用round()函数将入职日期四舍五入到年份利用连接操作符将获得的年份和“年度”字符串做拼接列出至少有一个雇员的所有部门列出薪金比“SMITH”多的所有雇员列出所有“CLERK”(办事员)的姓名及其

24、部门名称列出各种工作类别的最低薪金,显示最低薪金大于1500的记录找出各月最后一天受雇的所有雇员获得当月最后一天函数last_day(hiredate)指导完成时间:20分钟41/46共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解 42/46总结Oracle数据库入门安装数据库过程分为安装数据库软件和建库环节在服务器端配置监听服务,客户端配置网络服务名配置完后在服务器端启动数据库服务和监听服务连接数据库SQL*PlusPL/SQL Developer43/46总结Oracle数据库入门Oracle中常用数据类型字符类型数值类型日期类型LOB类型Oracle伪列包含 ROWNUM、ROWIDSQL语言分为DDL、DCL、TCL和DMLSQL函数分为单行函数分组函数分析函数44/46问题及作业集中问题&课后作业45/46扫我有更多精彩课程呦

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁