实验5S工具的高级应用 实验目的 1.熟练掌握SQL*Pus工具编辑口令的使用; 2.熟练掌握SQL*Plus格式化查询结果的设置; 3熟悉简单报表的创建 二、实验环境 硬件 每位学生配备计算机一台,满足相关软件的安装; 2.软件 Windows操作系统,安装 Oracle database11g企业版; 3.网络 需要局域网支持; 4.工具 无 实验理论与预备知识 1.SQL*Plus编辑口令 2.SQL*Pus格式化查询结果的设置。 四、实验任务 1.SQL*Plus基本命令的使用; 2.SQL*P|us命令的高级应用 3.报表的创建 五、实验内容及步骤 1.SQL*Pus基本命令的使用 在sαL*plus环境下,执行如下操作,请在实验报告中简要描述语句运行结 果及功能作用 (1)SQL>select name from VSDATABASE (2)SQL>select* from vsinstance (3) SQL>select username, account status from dba users
实验 5 SQL*Plus 工具的高级应用 一、实验目的 1. 熟练掌握 SQL*Plus 工具编辑口令的使用; 2. 熟练掌握 SQL*Plus 格式化查询结果的设置; 3. 熟悉简单报表的创建。 二、实验环境 1. 硬件 每位学生配备计算机一台,满足相关软件的安装; 2. 软件 Windows 操作系统,安装 Oracle Database 11g 企业版; 3. 网络 需要局域网支持; 4. 工具 无 三、实验理论与预备知识 1. SQL*Plus 编辑口令; 2. SQL*Plus 格式化查询结果的设置。 四、实验任务 1. SQL*Plus 基本命令的使用; 2. SQL*Plus 命令的高级应用; 3. 报表的创建。 五、实验内容及步骤 1. SQL*Plus 基本命令的使用 在 SQL*Plus 环境下,执行如下操作,请在实验报告中简要描述语句运行结 果及功能作用; (1) SQL>select name from V$DATABASE; (2) SQL>select * from v$instance; (3) SQL>select username,account_status from dba_users;
(4)SQL>desc dba data files (5)SQL>desc scott. emp (6) SQL>select* from scott. emp (7) SQL>Select file name, file id, bytes from dba data files (8)SQL>select distinct segment type, owner, tablespace_name from dba segments where tablespace name='SYSTEM order by owner, segment type; (9) SQL> select owner, table name tablespace name initial extent from dba tables where owner=sys 2.SQL*P|us命令的高级应用 (1)使用 DESCRIBE命令,在实验报告中描述 scott用户的dept表的结构信息 (2)使用SAVE命令将目前缓冲区内容保存到D: Oracle_1.sq文件中,然后使 用 START命令将文件中的内容读入到缓冲区并执行,请在实验报告中描述 具体操作过程; (3)对scot用户的emp表的输出信息进行格式设置,其中, empno列标题设 置为“员工编号”, NUMBER格式为“999”; ename列标题设置为“员工 姓名”; hiredate列标题设置为“受雇日期”且居中显示;请在实验报告中 描述具体操作 (4)设置一页显示20行数据,且一行显示100字符,然后输出 scott用户的 emp表的全部信息,请在实验报告中描述具体操作; (5)请执行 Oracle数据库中清除某个列或者所有列的格式设置的语句,并在实 验报告中描述; 3.报表的创建 (1)使用报表统计cott用户的emp表中各部门人数 主要操作 1)设置页眉和页脚信息 执行SoQL语句: TTITLE LEFT'日期: DATE CENTER使用报表统计各部门人数 BTITLE CENTER"谢谢使用该报表
(4) SQL>desc dba_data_files; (5) SQL>desc scott.emp; (6) SQL>select * from scott.emp; (7) SQL>select file_name,file_id,bytes from dba_data_files; (8) SQL>select distinct segment_type, owner, tablespace_name from dba_segments where tablespace_name=’SYSTEM’ order by owner, segment_type; (9) SQL> select owner, table_name,tablespace_name, initial_extent from dba_tables where owner=’SYS’; 2. SQL*Plus 命令的高级应用 (1) 使用 DESCRIBE 命令,在实验报告中描述 scott 用户的 dept 表的结构信息; (2) 使用 SAVE 命令将目前缓冲区内容保存到 D:\Oracle_1.sql 文件中,然后使 用 START 命令将文件中的内容读入到缓冲区并执行,请在实验报告中描述 具体操作过程; (3) 对 scott 用户的 emp 表的输出信息进行格式设置,其中,empno 列标题设 置为“员工编号”,NUMBER 格式为“9999”;ename 列标题设置为“员工 姓名”;hiredate 列标题设置为“受雇日期”且居中显示;请在实验报告中 描述具体操作; (4) 设置一页显示 20 行数据,且一行显示 100 字符,然后输出 scott 用户的 emp 表的全部信息,请在实验报告中描述具体操作; (5) 请执行 Oracle 数据库中清除某个列或者所有列的格式设置的语句,并在实 验报告中描述; 3. 报表的创建 (1) 使用报表统计 scott 用户的 emp 表中各部门人数 主要操作: 1) 设置页眉和页脚信息 执行 SQL 语句: TTITLE LEFT '日期:' _DATE CENTER '使用报表统计各部门人数' BTITLE CENTER '谢谢使用该报表
2)设置每页的行数及每行的字符数 执行SQL语句: SET PAGESIZE 40 SET LINESIZE 100 3)格式化列的显示 执行SoL语句 CLEAR COLUMNS COLUMN empno HEADING'员工编号' FORMAT9999 COLUMN ename heading'员工姓名' FORMAT A10 colUMn hiredate hEADIng"受雇日期" JUSTIFY CENTER COLUMN sal HeAD|NG"员工工资" FORMAT S9999999 COLUMN deptno HEADING·部门编号' FORMAT9999 4)SQL查询 执行SQL语句 select deptno, count(empno from emp group by deptno 5)清除以上格式 执行SQL语句: CLEAR COLUMNS TTITLE OFF BTITLE OFF 6)保存为D盘 test.sql文件 执行SQL语句 SAVE D: test sq 7)读取并执行test.sql文件 执行SQL语句 START D: \ testsq 任务1:请使用报表统计 scott表中的用户人数,并在实验报告中描述具体 实现步骤。 六、实验分析
2) 设置每页的行数及每行的字符数 执行 SQL 语句: SET PAGESIZE 40 SET LINESIZE 100 3) 格式化列的显示 执行 SQL 语句: CLEAR COLUMNS COLUMN empno HEADING '员工编号' FORMAT 9999 COLUMN ename HEADING '员工姓名' FORMAT A10 COLUMN hiredate HEADING '受雇日期' JUSTIFY CENTER COLUMN sal HEADING '员工工资' FORMAT $999,999.99 COLUMN deptno HEADING '部门编号' FORMAT 9999 4) SQL 查询 执行 SQL 语句: select deptno,count(empno) from emp group by deptno; 5) 清除以上格式 执行 SQL 语句: CLEAR COLUMNS TTITLE OFF BTITLE OFF 6) 保存为 D 盘 test.sql 文件 执行 SQL 语句: SAVE D:\test.sql 7) 读取并执行 test.sql 文件 执行 SQL 语句: START D:\test.sql 任务 1:请使用报表统计 scott 表中的用户人数,并在实验报告中描述具体 实现步骤。 六、实验分析
1.SQL*Plus中,GET命令和 START命令的功能是什么,有何不同? 2.SQL*Pus中,如果某文件(如D:laxt)已经存在,如何在已经存在的文件中 追加SQL*Pus缓冲区的数据内容? 七、课外自主实验 无 八、实验扩展资源 1.图书 (1)王彬周士贵 Oracle11g基础与提高[M]电子工业出版社2008 (2) Oracle database11g数据库管理艺术[M]人民邮电出版社,2010 2.期刊论文 3.在线学习平台 (1)http:/xg.hactcm.edu.cn 4.其他资源 (1)http://www.oracle.com/cn (2)https:/lacademy.oracle.com
1. SQL*Plus 中,GET 命令和 START 命令的功能是什么,有何不同? 2. SQL*Plus 中,如果某文件(如 D:\a.txt)已经存在,如何在已经存在的文件中 追加 SQL*Plus 缓冲区的数据内容? 七、课外自主实验 无 八、实验扩展资源 1. 图书 (1)王彬,周士贵.Oracle 11g 基础与提高[M].电子工业出版社,2008. (2)Oracle Database 11g 数据库管理艺术[M].人民邮电出版社,2010. 2. 期刊论文 3. 在线学习平台 (1)http://xg.hactcm.edu.cn 4. 其他资源 (1)http://www.oracle.com/cn (2)https://academy.oracle.com