Oracle 数据库上机试验指导2(答案)
上机实验指导_实验内容和思考参考答案_SQL_Server_2005实践教程学习
数据库技术与应用实践教程-SQL Server 2005上机实验指导(实验思考)—参考答案实验1:安装及管理工具使用略。
实验2:SQL Server数据库的管理二、实验内容及步骤4.单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句CREATE DATABASE创建studb 数据库。
然后通过系统存储过程sp_helpdb查看系统中的数据库信息。
CREATE DATABASE studbON( NAME=studb_dat,FILENAME='C:\DataBase\studb.mdf')EXEC sp_helpdb5.在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。
ALTER DATABASE studbMODIFY FILE (NAME=studb_data, SIZE = 5MB, MAXSIZE = 20MB, FILEGROWTH = 1MB)6.在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。
ALTER DATABASE studbADD LOG FILE(NAME = studb_log2, FILENAME=studb_log2.ldf, SIZE = 5MB, MAXSIZE = 10MB)8.使用Transact-SQL语句DROP DATABASE删除student_db数据库。
DROP DATABASE student_db实验3 SQL Server数据表的管理二、实验内容及步骤5.使用Transact-SQL语句CREATE TABLE在studentsdb 数据库中创建grade表。
CREATE TABLE grade ([学号] [char] (4) NULL,[课程编号] [char] (4) NULL ,[分数] [char] (5) NULL) ON [PRIMARY]8.使用Transact-SQL语句INSERT INTO...V ALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。
ORACLE数据库测试2及答案
1、表中的约束有哪些?请举例说明。
答:①primary key:学生表的学号②foreign key:成绩表的学号③check:性别in(‘男’,’女’)④not null:学生表的姓名⑤default:订购单订购日期为系统时间⑥unique:学生表中若学号为主键,ID号用unique2、引用索引的原则是什么?P84答:①在表中插入数据后创建索引②索引正确的表和列③合理安排索引列④限制表中索引的数量⑤制定索引数据块空间⑥根据索引大小设置存储参数。
3、简要说明用户、角色和权限之间的关系。
P172答:角色是一组权限,可授予用户或其他角色。
可利用角色来管理数据库权限,可将权限添加到角色中,然后将角色授予用户。
用户可使该角色起作用,并实施角色授予的权限。
一个角色包含所有授予角色的权限及授予它的其他角色的全部权限。
4、oracle的逻辑结构是如何组织的?答:作业中有二、用PL/SQL编程,计算S=1/2+1/4+1/8+…+1/2ⁿ,S精确到万分之一。
解:declaren number:=2;S number:=0;beginloopS:=S+1/n;n:=n*2;if 1-S<=(1/10000) thendbms_output.put_line(S);exit;end if;end loop;end;三、编写存储过程,求指定某门课程(课程名)的平均分数。
解:create or replace procedure proc(kcm in carchar2)avg1 number;beginselect AVG(成绩) as 平均分into avg1 from CJB where 课程号in (select 课程号from KCB where 课程名=kcm and rownum=1);dbms_output.put_line(avg1);end;四、编写触发器,向成绩表中插入一条记录,检查学生是否在学生表中存在,若不存在,则取消该操作。
数据库上机实验指导
数据库原理实验指导书实验1 数据库模式设计及建立一、实验目的:(1)掌握数据库模式设计,依据实际要求设计表结构,建立表的关系; 比较SQL命令方式和可视化环境管理器方式设计的异同点。
(2)掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。
熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验内容:1、分别用sql查询分析器和企业管理器创建表,并设定相应的约束。
要求:在学生管理数据库XSGL中创建如下三个表。
创建名为student(学生信息)的表,表中的各列要求如下:2、创建score –>student表,以及score –>course表的外部键。
3、增加、修改和删除字段,要求:1) 给student表增加一个memo(备注)字段,类型为varchar(200)。
2) 将memo字段的类型修改为varchar(300)。
3) 删除memo 字段。
4、简单查询操作。
该实验包括投影、选择条件表达,数据排序,使用临时表等。
具体完成以下题目,将它们转换为SQL语句表示,在学生选课数据库中实现其数据查询操作。
1)求数学系学生的学号和姓名2)求选修了课程的学生学号3)求选修课程号为‘C1’的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。
4)求选修课程号为‘C1’且成绩在80~90之间的学生学号和成绩,并成绩乘以0.8输出。
5)求数学系或计算机系姓张的学生的信息。
6)求缺少了成绩的学生的学号和课程号5、连接查询操作。
该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。
1)查询每个学生的情况以及他所选修的课程2)求学生的学号、姓名、选修的课程及成绩3)求选修课程号为‘C1’且成绩在90以上的学生学号、姓名和成绩4)查询每一门课程的间接先行课(即先行课的先行课)三、实验方法将查询需求用SQL语言表示;在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。
Oracle实验报告2标准答案
(6)修改脚本文件p2q1.sqll文件重新保存该查询。
(7)修改文件p2q2.sql,显示在10和30部门工作并且工资大于1500美元的雇员的姓名和工资,列标题显示为Employee和MonthlySalary,最后以p2q3.sql重新保存该文件,返回查询结果。
《Oracle数据库技术》
实验指导书2
基本SELECT、WHERE和ORDERBY子句的使用ﻬ
实验要求
1)掌握SQL*PLUS的基本使用.
2)掌握SELECT语句的简单用法.
3)掌握WHERE子句的用法。
4)掌握ORDER BY子句的用法。
实验步骤
(1)登录到SQL*Plus,初始用户名:SCOTT,口令为TIGER。
6.显示在10号和30号部门工作的雇员的姓名及其部门编号,并以字母顺序排列。
7.显示所有受雇于1982年的雇员的姓名和受雇日期。
8.显示没有上级管理员的雇员的姓名及其工作。
9.显示能挣得奖金的雇员的姓名、工资、奖金,并以工资和奖金降序排列。
10.显示姓名中第三个字母为A的雇员的姓名。
11.显示姓名中两次出现字母L并且在30部门工作或者其管理员编号是7782的雇员的姓名。
12.显示工作为clerk或analyst并且工资不等于1000、3000、5000的雇员的姓名、工作及工资。
SQL>SELECT empno,ename
2salary*12ANNUALSLARY
3FROMemp;
3.创建一个查询EMP表中检索出不重复的工作名称
4.创建一个查询显示雇员编号为7566的雇员的姓名和部门编号。
数据库原理及应用实验指导书答案
数据库原理及应用实验指导书 - 答案实验一:数据库管理系统的安装与配置问题一数据库管理系统(DBMS)是一种软件,用于管理和组织数据库。
它允许用户创建,读取,更新和删除数据库中的数据。
常见的数据库管理系统有MySQL,Oracle,SQL Server等。
问题二在实验室环境中,我们将使用MySQL作为我们的数据库管理系统。
以下是MySQL的一些常见特点: - 开源免费 - 跨平台支持 - 可扩展性强 - 有大型的用户社区和丰富的资源支持问题三MySQL的安装步骤如下: 1. 下载MySQL安装文件,可以从MySQL官方网站或者其他可信的下载源获取。
2. 运行安装程序,按照向导的指示进行安装。
3. 选择是否要安装MySQL 服务器和MySQL工具。
4. 设置密码以保护数据库的安全。
5. 完成安装程序并启动MySQL服务。
数据库是一个组织和存储数据的容器。
在关系型数据库中,数据以表的形式存储,每个表包含多个行和列。
每行代表一个记录,每列代表一个字段。
问题五关系型数据库管理系统(RDBMS)是一种DBMS,它使用结构化查询语言(SQL)来操作和处理数据。
常见的关系型数据库管理系统有MySQL,Oracle,SQL Server等。
问题六开放数据库连接(ODBC)是一种标准的数据库访问方法,它允许不同的应用程序通过统一的接口访问不同的数据库管理系统。
ODBC驱动程序充当应用程序和数据库之间的翻译器。
问题七在Windows系统中,ODBC数据源可以通过控制面板的“管理工具”来配置。
在数据源配置对话框中,可以添加,编辑和删除ODBC数据源。
在Windows系统中,可以使用ODBC接口库和ODBC驱动程序来连接和操作数据库。
具体步骤如下: 1. 加载ODBC接口库。
2. 初始化ODBC环境。
3. 建立数据库连接。
4. 执行SQL语句。
5. 关闭数据库连接。
6. 释放ODBC环境。
问题九ODBC接口库是一组API函数,用于连接和操作数据库。
数据库原理及应用最全上机实验及实验答案
实验一 SQL Server 2005 的安装和环境介绍一.实验目的与要求:1.掌握SQL Server 2005 服务器的安装方法2.了解SQL Server 2005 的环境3.了解数据库及其对象二.实验准备1.了解SQL Server 2005的版本2.了解SQL Server 2005各版本对硬件和软件的需求三.实验要求1.写出SQL SERVER 2005的功能与特点, 使用方法, 应用状况的报告2.完成SQL SERVER 2005的安装、启动、登录。
四.实验内容1.安装SQL Server 2005实验一 SQL Server 2005 的安装和环境介绍●实验指导——安装SQL Server 20051.根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例2.将 SQL Server 2005 DVD 插入 DVD 驱动器。
如果DVD驱动器的自动运行功能无法启动安装程序无法启动安装程序,请导航到 DVD 的根目录然后启动splash.hta。
3.在自动运行的对话框中,单击“运行 SQL Server 安装向导”。
4.在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。
接受许可协议后即可激活“下一步”按钮。
若要继续,请单击“下一步”若要结束安装程序,请单击“取消”。
如下图:5.在“SQL Server 组件更新”页上,安装程序将安装 SQL Server 2005 的必需软件。
有关组件要求的详细信息,请单击该页底部的“帮助”按钮。
若要开始执行组件更新,请单击“安装”。
更新完成之后若要继续,请单击“完成”。
6.在 SQL Server 安装向导的“欢迎”页上,单击“下一步”以继续安装。
7.在“系统配置检查 (SCC)”页上,将扫描安装计算机,以检查是否存在可能妨碍安装程序的条件。
8.在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。
oracle数据库实用教程第二版答案
oracle数据库实用教程第二版答案【篇一:oracle 11g(钱慎一)课后习题答案】若关系的某一属性组的值能唯一地标识一个元组,我们称之为( b )。
a、主码b、候选码c、外码d、联系2. 以下不属于数据库模型的三要素的是( c )。
a、数据结构b、数据操作c、数据控制d、完整性约束3. 以下对关系性质的描述中,哪个是错误的?( b )a、关系中每个属性值都是不可分解的b、关系中允许出现相同的元组c、定义关系模式时可随意指定属性的排列次序d、关系中元组的排列次序可以任意交换二、填空题1. 数据管理发展的三个阶段是人工管理、文件管理和数据库管理。
2. 数据库系统的三级模式包括逻辑数据模型(逻辑模型)、逻辑数据模型(概念模型)、物理数据模型(物理模型)。
三、思考题1. 数据库管理系统的主要功能有哪些?1)数据定义功能。
dbms提供相应数据语言来定义(ddl)数据库结构,它们是刻画数据库框架,并被保存在数据字典中。
2)数据存取功能。
dbms提供数据操纵语言(dml),实现对数据库数据的基本存取操作:检索,插入,修改和删除。
3)数据库运行管理功能。
dbms提供数据控制功能,即是数据的安全性、完整性和并发控制等对数据库运行进行有效地控制和管理,以确保数据正确有效。
4)数据库的建立和维护功能。
包括数据库初始数据的装入,数据库的转储、恢复、重组织,系统性能监视、分析等功能。
5)数据库的传输。
dbms提供处理数据的传输,实现用户程序与dbms之间的通信,通常与操作系统协调完成。
2. 思考关系规范化的过程。
答:对于存在数据冗余、插入异常、删除异常问题的关系模式,应采取将一个关系模式分解为多个关系模式的方法进行处理。
一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式,这就是所谓的规范化过程。
3. 思考数据库设计的步骤。
答:1需求分析、2概念设计阶段、3逻辑结构设计阶段、4数据库物理结构设计阶段、5数据库实施阶段、6数据库运行和维护阶段。
数据库上机实验(二)
数据库上机实验(二)第一篇:数据库上机实验(二)数据库上机实验内容及要求(第二部分)1.建立工厂管理数据库工厂(包括厂名和厂长名)需要建立一个管理数据库存储以下信息:(1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和联系电话;(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种;(3)一个车间生产多种产品,产品有产品号和价格;每种产品只能由一个车间生产;(4)一个车间制造多种零件,一种零件也可能为多个车间制造。
零件有零件号、重量和价格;(5)一种产品可由多种零件组成,一种零件也可以装配出多种产品;(6)产品和零件均存入仓库;(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
根据以上需求分析结果,按照下述要求,设计并建立工厂管理数据库。
υ分析实体及联系,设计E-R图。
υ将E-R图转换成关系模式,并规范化到3NF。
υ在Microsoft SQL Server2000中基于“企业管理器”建立数据库及相关对象(主码,外码,索引,约束等)。
υ测试数据入库2.基于“查询分析器”,完成并保存下述题目的SQL脚本(1)建立“工种”是“钳工”的所有职工详细信息的视图;(2)建立“车间号”是“CJ01”的钳工详细信息的视图;(3)建立使用了“零件号”是“LJ0002”的所有产品详细信息的视图;(4)查询使用了“零件号”是“LJ0002”的产品的生产车间号;(5)对零件表按照“零件号”建立唯一索引;(6)对职工表按照“性别”建立聚簇索引;(7)查询“车间主任姓名”是“赵平”的“车间地址”和“联系电话”;(8)查询“职工号”是“ZG0001”的职工所在车间的“车间主任姓名”和“联系电话”;(连接查询实现)(9)查询“产品号”是“CP0001”的产品的生产车间的“车间主任姓名”和“联系电话”;(嵌套查询实现)(10)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”,且查询结果按照“零件数量”降序排列;(11)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”和“产品价格”;(12)查询使用了“零件号”是“LJ0002”的所有产品的生产车间的“车间主任姓名”和“联系电话”;(13)查询使用了“零件号”是“LJ0002”的产品数;(14)查询“LJ0002”号零件装配产品的使用总量;(15)查询使用了3种以上零件的产品号;【注意】:下机时保存数据库文件(.mdf和.ldf)及SQL脚本文件到U盘。
Oracle数据库课程设计(1学分)实验指导书模板
计算机学院实验指导书课程编号:课程名称:课程学分:实验学时:适用专业:学生实验守则第一条学生进入实验室从事实验、科研活动,必须严格遵守实验室的各项规章制度。
第二条实验前必须做好预习,明确实验的目的、内容、方法和步骤,未经预习或无故迟到15分钟以上者,指导人员有权取消其实验资格。
第三条保持实验室的严肃、安静,不得在实验室内大声喧哗、嬉闹,不准在实验室内进食、吸烟和乱吐乱丢杂物。
第四条学生必须在实验指导老师规定实验开始时,方可动手实验,严禁未经许可就开始实验。
学生必须以实事求是的科学态度进行实验,严格遵守操作规程,服从实验教师或实验技术人员的指导(对有特殊要求的实验,必须按要求穿戴安全防护用具后方可进行实验),如违反操作规程或不听从指导而造成仪器设备损坏等事故者,按学校有关规定进行处理。
第五条学生应备有专用实验记录本,实验记录是原始性记录,是撰写实验报告的主要依据,内容要求真实、客观地反映实际情况,实验结果须经实验教师或实验技术人员认可。
第六条严防事故,确保实验室的安全。
发现异常情况,及时报告实验教师或实验技术人员,并采取相应的措施,减少事故造成的损失。
第七条实验完成后,应将仪器、工具及实验场地等进行清理、归还,经实验教师或实验技术人员同意后,方可离开实验室。
第八条独立完成实验报告,按时交给实验教师,不得抄袭或臆造。
实验报告是实验完成后的全面总结,它主要包括:实验名称、实验目的、实验原理、实验仪器设备、实验条件、实验数据、结果分析和问题讨论。
实验报告一律用钢笔或圆珠笔书写,统一采用国家标准所规定的单位与符号,要求文字书写工整,不得潦草;作图规范,不得随手勾画。
目录实验一、管理信息系统的设计与实现Oracle数据库课程设计报告实验一管理信息系统的设计与实现一、实验目的1、掌握Oracle数据库的安装、配置;2、重点掌握Oracle数据库开发(重点);3、掌握Oracle数据库设计(难点)。
二、实验原理及说明1、Oracle数据库的安装、配置Oracle安装与卸载创建/删除数据库2、SQL*Plus的使用SQL*Plus的环境配置SQL*Plus的的启动SQL*Plus登录,注销,编辑等命令3、SQL语句的使用数据查询语言数据操纵语言数据定义语言数据控制语言常用函数的使用创建索引创建视图分区表创建序列创建同义词4、完整性约束的使用主键约束唯一键约束外键约束非空约束check约束默认值5、PL/SQL编程数据类型与运算符PL/SQL语句控制结构编写存储过程编写触发器编写游标包编写函数6、移动数据库导出数据导入数据使用工具实现对数据的导入导出三、实验内容学生从以下题目中选择一题,单独完成课程设计内容:题目一:物业管理信息系统软件是一套具备记录、查询物业小区业主信息、物业管理费用信息、水电煤气费用信息、有线电视信息、供暖费用信息、业主房款缴纳信息,并且可以打印输出上述信息报表(月报表、季报表、年报表)的管理软件系统。
oracle11g管理与应用实践教程(习题及答案) (2)
1.6习题Oracle数据库基础一.填空题1、关系模型提供了3类完整性规则,分别是_______、_______、_______。
参考答案:实体完整性规则、参照完整性规则、用户定义的完整性规则2、RDBMS由两部分组成,即_______、_______两部分。
答案:数据库系统内核、数据字典3、关系数据库模型支持三种类型的表关联关系:_______、_______、_______。
答案:一对一、一对多以及多对多4、数据模型的种类有很多,例如_______、_______、_______和_______等。
目前理论最成熟、使用最普及的是_______。
答案:层次模型、网状模型、关系数据模型、面向对象模型。
关系数据模型二、选择题1、Oracle 11g版本号中字母“g”的含义是()A.产品类型的“代”( generation) B.网格(gridding)C.集成(integration)D.无含义答案:B2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()A.关系规范化理论B.关系运算理论C.关系代数理论D.数理逻辑答案:A3、消除了部分函数依赖的1NF的关系模式必定是()A.1NF B.2NF C.3NF D.4NF答案:B4、当B属于函数依赖于A属性时,属性B与A 的联系是()A.1对多B.多对1 C.多对多D.以上都不是答案:B5、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。
下面“部门”关系中,因哪个属性而使它不满足第一范式?部门(部门号,部门名,部门成员,部门总经理)A.部门总经理B.部门成员C.部门名D.部门号答案:B6、下列不属于Oracle数据库数据类型的是()A.NUMBER B.FLOAT C.CLOB D.BOOLEAN 答案:D三、简答题1、简述数据库与数据库管理系统的区别。
参考答案:数据库是用来存储信息或数据的机制,是按照数据结构来组织、存储和管理数据的仓库。
Oracle综合测试二(含答案)
综合测试二一、基础设置1.1 创建新用户test1密码test11.2 赋予test1管理员权限1.3 给予用户创建会话的权限1.4 给予用户创建表的权限1.5 修改当前会话的时间显示为以下格式“yyyy-mm-dd hh:mm:ss”二、数据管理操作某个学生运动会比赛信息的数据库,保存了如下的表:表1:运动会信息表gameinfo表2:运动员sporter成绩grade请用SQL语句完成如下功能:1. 在test1用户下建表,注意满足如下要求:a) 定义各个表的主码外码约束b) 运动员的姓名和所属系别不能为空值。
c) 积分要么为空值,要么为6,4,2,0, 分别代表第一,二,三名和其他名次的积分。
2. 往表中插入数据:运动会表(101,秋季运动会,工业大学,2008-8-8,1000,12300.50)运动员(1001, 李明,男,计算机系1002,张三,男,数学系1003, 李四,男,计算机系1004, 王二,男,物理系1005, 李娜,女,心理系1006, 孙丽,女,数学系)项目(x001, 男子五千米,一操场x002,男子标枪,一操场x003, 男子跳远,二操场x004, 女子跳高,二操场x005, 女子三千米,三操场)使用批量操作插入此表数据积分(1001, x001, 61002, x001, 41003, x001, 21004, x001, 01001, x003, 41002, x003, 61004, x003, 21005, x004, 61006, x004, 4)3. 完成如下操作1)查询运动会信息表以文字形式显示运动会的信息。
例如:工业大学秋季运动会在2008年8月8日举行,参加人数1000人,赛会预计费用12,300.50元。
2)由于客观原因,参赛人数减少20%,费用缩减为原来的90%,请更改运动会信息表。
3)1006号运动员的信息更改为孙梦,外语系。
4)计算参加运动会的男女运动员共多少人。
数据库实验报告实验二参考答案[最终版]
数据库实验报告实验二参考答案[最终版]第一篇:数据库实验报告实验二参考答案[最终版]1.你的老板要求你创建一个数据量为20G的数据库,但是你现在的硬盘上没有一个这么大空闲容量的分区,只有3个空闲容量为8G的分区,请问,你该如何完成这个任务?答:为该数据库创建3个数据文件,每个数据文件只需保存小于8G的数据,将这3个数据文件分别存储在不同的硬盘分区即可。
注:数据库中的数据都保存在该数据库的若干数据文件中,而非日志文件!2.你想创建一个初始大小为2MB的数据库,但是你却发现你创建的数据库的初始大小是5MB,而且不能小于这个值,请问是什么原因?答:系统数据库中的model数据库为用户创建数据库提供模板,也就是说,在创建数据库时,数据库引擎首先通过复制 Model 数据库中的内容来创建数据库的第一部分,然后再用空页填充新数据库的剩余部分。
因此,用户创建的数据库的初始大小不能小于model数据库的大小。
该问题的原因在于model数据库数据文件的初始大小被设定为5MB。
/***************************SQL语言部分*****************************/ /*创建数据库student*/create database studenton(name=student_data,filename='C:DATAstudent_data.mdf', size=3,maxsize=unlimited,filegrowth=1)log on(name=student_log,filename='C:DATAstudent_log.ldf',size =1,maxsize=20,filegrowth=10%)/*修改数据库student--添加数据文件*/alter database student add filegroup studata /*先增加一个文件组studata*/ goalter database studentadd file(Name=student_data1,filename='D:DATAstudent_data1.nd f',Size=50,Maxsize=500,Filegrowth=30%)to filegroup studata /*删除数据库student */ drop database student第二篇:SQL数据库实验报告实验二实验2SQL Server数据库的管理1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。
数据库上机实验报告答案
数据库上机实验报告答案1.建立学生数据库模式学生表:student (sno 学号,sname 姓名,ssex 性别,sage 年龄,sdept 所在系)其中:sno 长度为4的字符串,为主码;sname 长度为8的字符串;ssex 长度为2的字符串,其值只取男、女;sage 整数,其值在0-150之间;sdept 长度为10的字符串。
2.建立课程数据库模式课程表:course ( cno课程号,cname课程名,ccredit学分)其中:cno 长度为4的字符串,为主码cname 长度为10的字符串,不能有重复课程名;ccredit 整数。
3.建立选课数据库模式。
选课表: sc (sno学号, cno课程号, grade成绩)其中:sno 长度为4的字符串,和student表sno外键关联,且级联删除cno 长度为4的字符串,course表cno外键关联,grade 整数,值或空或为0—100之间,(sno, cno) 联合作主码。
(1)创建上述三个表。
(2)将年龄的数据修改为15-30之间。
(3)为Student中sname添加列级完整性约束,不能为空。
(4)为SC建立按学号升序和课程号降序建立唯一索引.(5)在表student的sname字段建立一个升序索引。
(6)删除在表student的sname字段建立的索引。
(7)给student表增加一个地址(address)属性。
(8) 删除student表地址(address)属性。
(9)建立视图view1,要求有sno,sname,cname,grade四个字段。
1) create table studen(sno char(4) primary key,sname char(8),ssex char(2) check( ssex in('男','女')),sage int check(sage between 0 and 150),sdept char(10));create table course(cno char(4) primary key,cname char(10) unique,ccredit intcreate table sc(sno char(4),cno char(4),grade int check(grade between 0 and 100),primary key (sno,cno),foreign key(sno) references student(sno) on delete cascade, foreign key(cno) references course(cno));2) alter table studentadd constraint sage_con check(sage between 15 and 30);3) alter table studentmodify sname not null;4) create unique index index1on sc (sno asc,cno desc);5) create index index2on student(sname asc);6) drop index index2;7) alter table studentadd address char(30);8) alter table studentdrop column address;9) create view view1asselect A.sno,sname,cname,gradefrom student A,course B,sc Cwhere A.sno=C.sno and /doc/287635464.html,o=http://www.doczj .com/doc/287635464.html,o;(1)在上述三个表中输入若干记录。
oracle-上机考试试题与答案
1、写一个pl/sql程序块:直接使用数据类型定义两个变量v_empno 和v_ename,从scott模式下的emp表中检索某个员工的编号empno 和ename,存储到v_empno和v_ename,并输出此员工的编号和。
set serveroutput ondeclaretype merchandise is record(v_empno number(30),v_ename varchar2(30));record_merchandise merchandise;beginselect empno,enameinto record_merchandisefrom empwhere empno='7369';dbms_output.put_line(record_merchandise.v_empno);dbms_output.put_line(record_merchandise.v_ename);end;2、写一个pl/sql程序块:根据scott模式下的emp表中的部门编号deptno字段的值,为为SCOTT的雇员修改工资;若他所在部门号为10,则工资加100;若部门号为20,则工资加300;否则工资加400。
set serveroutput ondeclarev_deptno emp.deptno%type;addsal emp.sal%type;sal number;beginselect deptno into v_deptno from emp where ename='SCOTT';if v_deptno='10' thenaddsal:=100;elsif v_deptno='20' thenaddsal:=300;elseaddsal:=400;end if;update emp set sal=sal+addsal where ename='SCOTT';dbms_output.put_line(sal);end;3、写一个pl/sql程序块:定义一个游标类型type_cursor,然后使用type_cursor定义变量ref_cur;根据scott模式下的emp表和dept表,使用游标变量ref_cur检索员工和工作信息,并输出员工和工作信息;使用游标变量ref_cur检索部门编号和部门名称信息,并输出部门编号和部门名称信息。
Oracle数据库应用上机指南
ORACLE数据库上机指南目录Oracle 上机练习(一) (3)Oracle 上机练习(二) (4)Oracle 上机练习(三) (6)Oracle上机练习(四) (7)Oracle 上机练习(五) (8)Oracle上机练习(六) (9)Oracle上机练习(七) (12)Oracle上机练习(八) (15)要求:将sql代码及截屏存成word文档发送到ftp。
Oracle 上机练习(一)本练习主要熟悉oracel sql*plus的一些常用命令。
1、连接SQL*Plus system/manager2、显示当前连接用户SQL> show user3、查看系统拥有哪些用户SQL> select * from all_users;4、新建用户并授权SQL> create user a identified by a;(默认建在SYSTEM表空间下)SQL> grant connect,resource to a;5、连接到新用户SQL> conn a/a6、查询当前用户下所有对象SQL> select * from tab;7、建立第一个表SQL> create table a(a number);8、查询表结构SQL> desc a9、插入新记录SQL> insert into a values(1);10、查询记录SQL> select * from a;11、更改记录SQL> update a set a=2;12、删除记录SQL> delete from a;Oracle 上机练习(二)一、进入自己创建的用户下进行以下操作。
1、创建表STUDENT、COURSE、GRADE,各个表的结构如下:(1) STUDENT学号NUMBER(6),姓名V ARCHAR2(12)入学时间DATE,专业V ARCHAR2(20),性别CHAR(2),年龄INTEGER(2) COURSE课程号NUMBER(6),课程名称V ARCHAR2(20),学时INTEGER,学分INTEGER(3) GRADE学号NUMBER(6),课程号NUMBER(6),成绩NUMBER(2)2、向上面的三个表中分别插入5条纪录。
oracle上机试题及答案
oracle上机试题及答案Oracle上机试题及答案1. 查询当前数据库版本- 请写出SQL语句来查询当前数据库的版本。
答案:```sqlSELECT * FROM V$INSTANCE;```2. 创建表- 编写SQL语句创建一个名为`employees`的表,包含字段`id`(主键,自动增长),`name`(姓名),`department`(部门),`salary`(薪资)。
答案:```sqlCREATE TABLE employees (id NUMBER GENERATED ALWAYS AS IDENTITY,name VARCHAR2(100),department VARCHAR2(50),salary NUMBER(10, 2),PRIMARY KEY (id));```3. 插入数据- 向`employees`表中插入一行数据,姓名为"John Doe",部门为"IT",薪资为5000。
答案:```sqlINSERT INTO employees (name, department, salary) VALUES('John Doe', 'IT', 5000);```4. 更新数据- 更新`employees`表中姓名为"John Doe"的员工的薪资为6000。
答案:```sqlUPDATE employees SET salary = 6000 WHERE name = 'John Doe'; ```5. 删除数据- 删除`employees`表中所有薪资低于3000的员工记录。
答案:```sqlDELETE FROM employees WHERE salary < 3000;```6. 查询数据- 查询`employees`表中所有员工的姓名和薪资,并按薪资从高到低排序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二代码参考:
1.-- 创建学生表
create table student
(
studid char(6) primary key,
studname varchar2(16) not null,
gender char(4) check(gender in('男','女')),
addr varchar2(256)
);
-- 创建课程表
create table course
(
courseid char(6) primary key,
coursename varchar2(32) not null unique,
teacher varchar2(16) ,
score number check(score in (1,3,5))
);
-- 创建选课表
create table courSelc
(
recid number(4) primary key,
studid char(6),
courseid char(6),
score number(2) check(score >=0 and score <=100),
constraint fk_stud foreign key(studid) references student(studid),
constraint fk_cour foreign key(courseid) references course(courseid) );
2. alter table student modify studName null;
3.1 alter table course modify courseName null;
3.2 alter table course add examdate date;
4.insert into course values('M1001','数学','奥巴马','3',to_date('2012-1-
1','yyyy-mm-dd'));
insert into course values('J2002','军事理论','拿破仑','5',to_date('2012-1-1','yyyy-mm-dd'));
insert into course values('S3003','摔跤','普京','1',to_date('2012-1-1','yyyy-mm-dd'));
update course set examdate =to_date('2012-1-1','yyyy-mm-dd') where courseid='M1001';
update course set examdate =to_date('2012-1-1','yyyy-mm-dd') where courseid='J2002';
update course set examdate =to_date('2012-1-1','yyyy-mm-dd') where courseid='S3003';
5. select * from course;
6.修改参数: nls_date_format
alter session set nls_date_format='yyyy-mm-dd';
运行select * from course;查看查询结果。
alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
运行select * from course;查看查询结果。
nls_date_format参数对数据显示的影响。
7.1.1 select * from student where gender='男';
1.2 select * from student where gender='女';
7.2 select * from student where studname=null;
7.3 select studname 姓名,studid 学号,gender 性别 from student;
7.4 select * from course where examdate between to_date('2012-3-1','yyyy-mm-dd') and to_date('2012-6-1','yyyy-mm-dd');
7.5 select s.studid,s.studname,c.coursename,cs.score from student s,course c,courSelc cs where s.studid=cs.studid and c.courseid=cs.courseid and
c.coursename='数学';
7.6 select count(*) from courSelc cs join course c on c.courseid=cs.courseid where c.coursename='数学';
7.7 select avg(cs.score) from courSelc cs join course c on
c.courseid=cs.courseid where c.coursename='数学';。