《Oracle数据库应用与实践》是作者在多年从事Oracle数据库教学和开发的基础上编写而成的。本书从应用与实践的角度出发,全面介绍了Oracle数据库应用与开发技术。书中通过大量的示例代码和案例分析,并配以习题和上机练习,强化基本概念,着重训练学生的动手能力。通过阅读本书,读者能够快速掌握Oracle开发的方方面面。另外,本书免费提供教学课件、案例源代码和习题答案等教学资源(需要下载)。
《Oracle数据库应用与实践》共14章,分为3篇。第1篇为基础篇,涵盖的主要内容有数据库基础、Oracle数据库体系结构、Oracle数据库常用工具、表空间和数据文件管理、Oracle模式对象、SQL语言基础。第2篇为进阶篇,涵盖的主要内容有SELECT高级查询、PL/SQL编程基础、存储过程与函数的创建、触发器和包的创建与应用、Oracle安全性管理、数据库备份和恢复。第3篇为高级篇,涵盖的主要内容有系统性能及语句优化、Oracle数据库挖掘技术等,最后还通过数据库综合实例学习了Oracle开发的经验和技巧。附录中提供了实验指导和实习、常用Oracle使用技巧及Oracle认证考试等内容。
《Oracle数据库应用与实践》内容丰富,注重实践,适合Oracle初学者阅读,尤其适合作为大中专院校教材和教学参考书使用。对于Oracle数据库管理和开发人员及相关专业人士,本书也是不可多得的参考书。
快速了解本书精华内容
Oracle数据库概述
Oracle数据库体系结构
Oracle数据库常用工具
表空间和数据文件管理
Oracle模式对象
SQL语言基础
SELECT高级查询
PL/SQL编程基础
存储过程、函数、触发器和包
Oracle安全性管理
数据库备份和恢复
系统性能及语句优化
Oracle数据挖掘技术
数据库应用综合实例
实验指导与实习
Oracle常用语句与使用技巧
Oracle数据库认证考试介绍与样题
从应用与实践出发,全面介绍了Oracle数据库管理与开发,力求让不同层次的读者都可以快速撑握Oracle,并能初步了解Oracle数据挖掘的高级应用 290个实例、10个应用案例、1个综合项目案例、300个练习题、8个实验指导、21个Oracle常用语句及技巧、10个Oracle认证考试样题 介绍了Oracle 11g、12c的最新内容以及Oracle 11g认证考试内容,涵盖Oracle的基本使用、技术原理、SQL语句、PL/SQL、备份与恢复、应用技巧等 包含了Oracle 开发人员、DBA及系统分析人员必须要掌握的知识,适合Oracle数据库管理与开发人员、Oracle认证考试学员、教师和学生等阅读 市场上唯一一本介绍Oracle数据挖掘高级应用的图书,每章都有详细的案例分析和实践练习,最后还提供了课程的实验指导 涵盖Oracle 11g的体系结构、应用技术及PL/SQL在实际项目中要重点掌握的内容 结合大量示例对初学者经常出现的一些问题进行了归纳和总结,采用了大量的实例和常见问题分析,涵盖Oracle数据库的常用知识点和使用技巧 所有实例都采用代码、图示相结合的方式,做到了明确直观,大多知识点使用了SQL语句和图形界面操作相对照的方式进行讲解 对每个知识点都指明了核心要点和使用技巧,使读者能够明确学习的重点 课后习题涵盖书中所有的知识点和基本语法,可为OCP和OCM等认证考试提供帮助 推荐阅读(请点击链接): 《Oracle数据库管理从入门到精通》 (本书姊妹篇,全面介绍Oracle数据库管理与维护,一本书彻底搞定Oracle数据库管理与维护) 《Oracle PL/SQL从入门到精通》(PL/SQL经典畅销书,大量读者好评,Oracle进阶必读) 《SQL Server 2012王者归来:基础、安全、开发及性能优化》 (全面、深入、实用,全程视频教学) “Linux典藏大系” (丛书畅销10万册,全面、详细、深入、实用,Linux爱好者必读经典) 《程序员的数学思维修炼(趣味解读)》 (专门为程序员而写的数学书,生动有趣,程序员必读!)
方巍,博士、博士后、副教授、硕导、高级工程师。中国计算机学会高级会员、ACM会员、中国系统分析师协会(CSAI)顾问团专业顾问、江苏省计算机学会会员和江苏省人工智能学会委员、江苏省政府采购招标评审专家。有多年的JavaEE和数据库软件开发与设计经验,深入理解数据库系统的应用与开发过程。目前已主持了2项省部级项目和3项市厅级项目,参与了国家自然科学基金、教育部重点科研项目、江苏省重大科技支撑计划等国家级和省部级科研项目共8项。在国际和国内相关学术会议和核心期刊上发表了论文20余篇,其中被SCI和EI检索15篇。获得了国家发明专利授权6项和软件著作权7项。研究兴趣包括信息集成、云计算和大数据挖掘等。
文学志,博士、博士后、硕导、副教授。毕业于东北大学计算机应用技术专业。中国计算机学会会员、ACM会员。有多年的数据库软件开发与设计经验,深入理解数据库系统在企业信息化进程中的应用。先后参与了国家自然科学基金项目、国际科技合作重点项目、国家863高技术研究发展计划项目及其他省级科研项目共5项。已经在中文核心期刊及以上级别的杂志和国内外重要学术会议上发表了学术论文近40篇。获得了国家发明专利3项。研究兴趣包括机器学习、模式识别和智能交通等。
第1篇 基础篇第1章 Oracle数据库概述 1.1 数据库基本概念 1.1.1 数据库与数据库管理系统 1.1.2 关系数据模型 1.1.3 关系数据库系统的组成 1.2 了解常用的数据库产品 1.3 Oracle简介 1.3.1 Oracle的发展历程 1.3.2 Oracle的特点 1.3.3 Oracle的工作模式 1.3.4 Oracle应用结构 1.3.5 Oracle基本概念 1.4 Oracle 11g环境 1.4.1 在Windows环境下安装Oracle 11g 1.4.2 在Linux环境下安装Oracle 11g 1.4.3 Oracle网络服务 1.4.4 Oracle启动与关闭 1.5 Oracle安装与使用常见问题 1.6 本章小结 1.7 习题与实践练习第2章 Oracle数据库体系结构 2.1 物理存储结构 2.1.1 数据文件 2.1.2 控制文件 2.1.3 日志文件 2.1.4 其他文件 2.2 逻辑存储结构 2.2.1 表空间 2.2.2 段 2.2.3 区 2.2.4 块 2.3 内存结构 2.3.1 系统全局区(SGA) 2.3.2 程序全局区(PGA) 2.4 Oracle进程结构 2.5 数据字典 2.5.1 静态数据字典 2.5.2 动态数据字典 2.6 本章小结 2.7 习题与实践练习第3章 Oracle数据库常用工具 3.1 SQL*Plus概述 3.2 启动、退出SQL*Plus 3.3 预备知识 3.4 SQL*Plus运行环境 3.5 使用SQL*Plus命令 3.5.1 HELP命令 3.5.2 DESCRIBE 命令 3.5.3 编辑SQL*Plus命令 3.5.4 如何在SQL*Plus中使用变量 3.5.5 SQL*Plus的报表功能 3.6 企业管理器(OEM) 3.6.1 OEM的启动 3.6.2 OEM的使用 3.7 实例分析 3.8 本章小结 3.9 习题与实践练习第4章 表空间和数据文件管理 4.1 Oracle数据库逻辑结构 4.2 表空间和数据文件概述 4.3 表空间中的磁盘空间管理 4.4 创建表空间 4.4.1 创建永久表空间 4.4.2 创建临时表空间 4.4.3 创建撤销表空间 4.4.4 创建非标准块表空间 4.4.5 创建大文件表空间 ……第5章 Oracle模式对象第6章 SQL语言基础第2篇 进阶篇第7章 SELECT高级查询第8章 PL/SQL编程基础第9章 存储过程、函数、触发器和包第10章 Oracle安全性管理第11章 数据库备份和恢复第3篇 高级篇第12章 系统性能及语句优化第13章 Oracle数据挖掘技术第14章 数据库应用综合实例附录A 实验指导与实习附录B Oracle常用语句与使用技巧附录C Oracle数据库认证考试介绍与样题参考文献
第3章Oracle数据库常用工具
在数据库系统中,可以使用两种方式执行命令,一种方式是通过图形化工具,另一种方式是直接使用各种命令。图形化工具的特点是直观、简单、容易记忆,而直接使用命令则需要记忆具体命令的语法形式。但是,图形工具灵活性比较差,不利于用户对命令及其选项的理解;而命令则非常灵活,有利于加深用户对复杂命令选项的理解,并且可以完成某些图形工具无法完成的任务。在Oracle11g系统中,提供了用于执行SQL语句和PL/SQL程序的工具SQL*Plus。本章先简要地从整体上介绍SQL*Plus工具,然后再介绍一些SQL*Plus工具中常用的操作命令。
本章知识要点:
了解SQL*Plus的运行环境;
熟悉SQL*Plus基本的运行环境设置;
熟悉HELP命令;
熟练掌握DESCRIBE命令的使用;
掌握PROMPT命令的使用;
掌握SPOOL命令的使用;
熟练掌握COLUMN命令的应用;
熟练掌握缓存区命令的使用;
熟练掌握在SQL*Plus中编写、运行脚本文件;
了解企业管理器的配置方法;
掌握企业管理器的启动和停止方法;
了解企业管理器的功能及基本使用方法;
综合使用SQL*Plus命令解决实际问题。
3.1SQL*Plus概述Oracle的SQL*Plus是与Oracle进行交互的客户端工具。在SQL*Plus中,可以运行SQL*Plus命令与SQL语句。
我们通常所说的DML(DataManipulationLanguage)、DDL(DataDefineLanguage)和DCL(DataControlLanguage)语句都是SQL语句,它们执行完后,都可以保存在一个被称为SQLBuffer的内存区域中,并且只能保存一条最近执行的SQL语句。我们可以对保存在SQLBuffer中的SQL语句进行修改,然后再次执行,SQL*Plus一般都与数据库打交道。
除了SQL语句,在SQL*Plus中执行的其他语句我们称之为SQL*Plus命令。它们执行完后,不保存在SQLBuffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。
SQL*Plus是Oracle数据库管理系统提供的一个工具软件,它提供一个人机接口,通过SQL*Plus管理和维护数据库,如常用的查询数据表信息、系统信息和数据文件等。它提供了一系列指令,通过这些指令可以简化用户的指令或者格式化输出信息。它还提供了编写脚本文件的功能,可以极大地提高DBA管理数据库的效率。SQL*Plus作为数据库管理工具可以设置友好的环境变量,以方便DBA的管理和维护需求。
SQL*Plus作为与Oracle进行交互的常用工具,具有很强的功能,主要有:数据库的维护,如启动、关闭等,这些一般在服务器上操作。
执行SQL语句执行PL/SQL。
执行SQL脚本。
数据的导出,报表。
应用程序开发、测试。
生成新的SQL脚本。
供应用程序调用,如安装程序中进行脚本的安装。
用户管理及权限维护等。
3.2启动、退出SQL*Plus
SQL*Plus是与Oracle数据库进行交互的一个非常重要、在服务器端或客户端都可以使用的工具,同时也是一个通用的、在各种平台上几乎都完全一致的工具。所以SQL*Plus的应用非常广泛。而且初学者基本上都是使用SQL*Plus和Oracle数据库进行交互的。
如果要使用SQL*Plus与数据库服务器进行交互,首先要登录到数据库服务器上,这时在SQL*Plus进程和数据库服务器之间将建立一条连接,它们以客户/服务器模式工作。下面介绍几种Oracle11g中SQL*Plus的启动和退出方法。
方法一:在程序组中启动、退出。
(1)依次选择“开始”→“所有程序”→Oracle-OraDb11g_home1→“应用程序开发”→SQLPlus命令,如图3-1所示。
图3-1“开始”菜单中的“SQL*Plus”菜单项(2)在打开的SQLPlus窗口中出现了“请输入用户名”的提示字样,在“请输入用户名”后输入数据库的username,并按Enter键。在“输入口令”后输入数据库的登录口令,并按Enter键。当出现“连接到”字样和“SQL>”提示符后表示已经成功连接数据库,如图3-2所示,SQL*Plus已经准备好接收命令或者语句了。
图3-2连接到默认数据库
或者在“请输入用户名”后直接输入username/password[@connect_identifier]而直接登录连接到数据库。其中[@connect_identifier]可选(connect_identifier是数据库的连接标识符,其简写的别名就是网络服务名)。
亦可在“请输入用户名”后输入username,在“输入口令”后输入password[@connect_identifier]。
(3)在“SQL>”提示符后输入命令或者语句,然后回车,就可以实现和数据库的交互了。命令和语句不分大小写,但建议将命令和语句保留字大写。命令后面不需要(但可以)输入分号“;”,而SQL语句的后面需要输入分号来结束。
(4)在“SQL>”提示符后输入exit或者quit后按Enter键即可退出SQL*Plus。
如果要在不退出SQL*Plus的情况下断开与数据库服务器的连接,则输入DISCONNECT命令。如果要重新连接,或者在已经连接的情况下以另一个用户的身份连接,则使用CONNECT命令。这条命令的格式为:
CONNECT用户名/口令assysdba
如图3-3所示。
图3-3connect连接另一个数据库方式如果是SYS用户,则使用assysdba或者assysoper参数。如果是远程登录,还要在用户名和口令之后输入网络服务名。
方法二:在安装目录中找到sqlplus.exe启动、退出。
在Oracle的BIN目录中找到sqlplus.exe双击后启动即可,如果是按默认的方式安装的,则sqlplus.exe的路径为D:\app\Administrator\product\11.2.0\dbhome_1\BIN。其他操作同方法一。
方法三:在运行中启动、退出SQL*Plus。
依次选择“开始”→“运行…”命令,在“运行”窗口中的“打开(O):”右边的文本框中输入sqlplus用户名/口令@数据库名,然后单击“确定”按钮即可。例如要连接到数据库magical的用户名为scott,口令是tiger,则在“运行”窗口中启动SQL*Plus的方法如图3-4所示。退出操作同方法一。
图3-4在运行窗口中启动SQL*Plus方法四:在命令行中启动、退出。
这种方法的前提是在安装Oracle11g时已经在环境变量Path添加了sqlplus.exe程序的完整路径D:\app\Administrator\product\11.2.0\dbhome_1\BIN。在安装时这个环境变量是会自动添加的,所以无需做调整,为了证实,你可以在Path变量中找找上述路径是否存在。
(1)依次选择“开始”→“所有程序”→“附件”→“命令提示符”命令。打开命令提示符窗口。
(2)输入sqlplus或者sqlpuls.exe后按Enter键。会出现“请输入用户名”字样,后续的操作就同方法一了。或者直接输入sqlplususername/password[@connect_identifier]连接到数据库,连接数据库成功后的界面如图3-5所示。后续的操作同方法一。
图3-5命令方式启动SQL*Plus方法五:快捷方式的启动、退出。
(1)在D:\app\Administrator\product\11.2.0\dbhome_1\BIN(默认安装情况下,视自己的安装情况而定)目录下找到sqlplus.exe。
(2)在sqlplus.exe图标上单击右键,在菜单中选择“发送到”→“桌面快捷方式”命令。
(3)在桌面上找到sqlplus.exe的快捷方式,在其图标上单击右键,从快捷菜单中选择“属性”命令,在弹出的窗口中有个“目标”,将目标中的内容改为D:\app\Administrator\product\11.2.0\dbhome_1\BIN\sqlplus.exeusername/password@网络服务名。然后依次单击窗口下面的“应用”和“确定”按钮,如图3-6所示。
图3-6快捷方式启动SQL*Plus
(4)双击桌面上SQL*Plus的快捷方式即可自动连接到指定的数据库。后续的操作同方法一。
几种连接方式的优缺点如下:
命令行方式的优点是可以使用复制、粘贴等功能;缺点是在命令行中带参数启动SQL*Plus程序就会在标题栏显示该参数,不利于保密。
快捷方式的优点是无需每次都输入用户名、口令和连接字符串;缺点是容易暴露用户名和口令,不安全