一、创建数据库和表
1.详细描述Oracle 11g的安装步骤(你在安装过程中是否遇到了困难,如何解决的)。
安装步骤:
第一步:将两个文件一起解压到同一目录下的同一文件夹内, 路径名称中不要出现中文,也不要出现空格等不规则字符。解压完成后,到相应路径下,找到setup.exe,双击运行,安装Oracle 11g。
第二步:配置安全更新。电子邮件可写可不写,然后下一步。
第三步:安装选项。直接选择默认的“创建和配置数据库”,单击下一步。
第四步:系统类,直接选择默认的桌面类,单击下一步
第五步:典型安装。选好目录,输入口令密码。单击下一步
第六步:先决条件检查。 直接下一步
第七步:概要,配置信息可以保存成文件或不保存文件,点击完成
第八步:等待安装
2.安装完oracle 11g,电脑的开机速度会变慢,为什么?怎样解决?
通过以下设置:windows10下,打开计算机管理,找到服务和应用程序下的服务,把oracle开头的所有服务,全部改为“手动”启动
3.oracle 11G这个软件与你以前用过的软件有什么区别(可以从用法,复杂度以及其他方面来表述)
数据持久性:
oracle保证提交的数据均可恢复,因为oracle把提交的sql操作线写入了在线联机日志文件中,保持到了磁盘上,如果出现数据库或主机异常重启,重启后oracle可以考联机在线日志恢复客户提交的数据。
mysql:
默认提交sql语句,但如果更新过程中出现db或主机重启的问题,也许会丢失数据。
用户权限:
mysql的用户权限管理,是放到mysql自动带的一个数据库mysql里面的,而oracle是用户权限是根着表空间走的。
表字段类型:
oracle的表字段类型也没有mysql多,并且有很多不同
4.SQLPLUS的常用命令有哪些,你学会使用了吗?(请举例)
show命令:
show 命令用来显示当前sqlplus环境中的系统变量、错误信息、初始化参数、
当前用户信息等
save命令:
在SQL*PLUS中可以执行一条或若干条sql命令,它们被存放在缓冲区中,
且缓冲区中只能存放最近刚执行的sql或pl/sql ,(后进的覆盖之前的),
如果要保存以往执行过的语句,要使用save。
get命令:
上面说过save命令用来保存,那么get命令就是用来读取的,
将保存后的文件读取到缓冲区中进行显示
edit命令:
使用edit命令可以将缓冲区的内容复制到一个文件中 ,默认文件afiedt.buf ,
当然也可以制定一个已经命了名存在的文件
二、创建数据库和表
1、使用DBCA创建数据库(写出大致步骤)
1)打开oracle下的工具DataBase Configuration Assistan
2)创建数据库,选择一般用途,然后填写全局数据库名和SID,然后一直默认下一步,直到出现数据库身份证明窗口,设置所有账户使用的同一口令,然后一直默认下一步,在恢复配置窗口可以勾选启用归档,然后一直默认下一步,直到完成安装即可。
2在ORCL数据库中创建表C表和S和表结构如表1,2所示。
(1)使用SQL语句分别创建表


创建命令:
create table C
(
CNO NUMBER(2) PRIMARY KEY,
CNAME VARCHAR2(20),
NUM NUMBER(3)
);
create table S
(
SNO NUMBER(4) PRIMARY KEY,
SNAME VARCHAR2(10) UNIQUE,
SAGE NUMBER,
SEX CHAR(2),
CNO NUMBER(2)
);
3.根据下图BOOK,READER,BORROW创建表

Book:
create table BOOK
(
NO NUMBER(6) PRIMARY KEY,
TITLE VARCHAR2(33),
AUTHOR VARCHAR2(12),
PUBLISH VARCHAR2(14),
PUB_DATE DATE,
PRICE NUMBER(2))
Reader:
create table READER
(
RNO NUMBER(6) PRIMARY KEY,
RNAME VARCHAR(4))
Borrow:
CREATE TABLE BORROW
(
NO NUMBER(6),
RNO NUMBER(6),
BORROW_DATE DATE
CONSTRAINT PRIMARY KEY(NO,RNO))
三、表的CRUD操作
请参照实验2的两张表完成以下工作
1.为student表建立一个外键约束,其CNO列参照class表的CNO列
Alter table S add constraint FK_S_C foreign key (CNO)
references C (CNO);
2.为student表sage列添加一个检查约束,保证该列取值在0-100之间
Alter table S add constraint CK_SAGE check(SAGE>=0
and SAGE <=100);
3.为student表的sex列添加一个检查约束,保证该列取值为‘M’或’F‘
Alter table S add constraint CK_SEX check(SEX=’F’ or SEX=’M’);
4.创建一个视图,视图内容是年龄大于19岁的A1721班同学的基本信息。
Create view S_INFO(SNO,SNAME,SAGE,SEX,CNO) as select
S.SNO,S.SNAME,S.SAGE,S.SEX,S.CNO from S,C
Where S.SAGE>19 and C.CNAME=’A1721’;
5.建立一个序列并应用在student的sno列上,并查看序列的当前值和下一个值
Create sequence s_sno_seq
Start with 1
Increment by 1
Nomaxvalue
Nocycle
Cache 10;
Insert into S(SNO) values(s_sno_seq);
Select s_sno_seq.currval from dual;
Select s_sno_seq.nextval from dual;
6.在实验2所建的BOOK表的NO列上建立一个唯一索引
Create unique index NOX_BOOK_UID ON BOOK(NO);
7.建立一个索引,按学生的年龄降序排列
Create index SAGE_INDEX on S(SAGE DESC);
8.根据下面BOOK,READER,BORROW表结构插入下图数据

(1)三张表的数据插入命令(每张表各插入两条记录):
Book:
Insert all
Into book values()
Select 1 from dual;
Reader:
Insert all)
Into reader values()
Select 1 from dual;
Borrow:
Insert all
Into borrow values()
Select 1 from dual;
(2)将图书标号为100007的图书价格改为29
Update BOOK set price=29 where no=100007;
(3)删除价格低于30的图书信息
Delete from book where price<30;
(4)将读者李凤的借书信息删除
Delete from borrow b,reader r where b.rno=r.rno and r.rname=’李凤’;
9.将employees表中员工信息按照不同部门号分别复制到emp10,emp20,emp30和emp_other表中。同时,将工资低于5000元的员工信息复制到lowsal表中,将工资高于10000元的员工信息复制到highsal表中,将工资在5000~10000元之间的员工信息复制到middlesal表中。(employees位于HR用户模式中)
create table lowsal
as
select * from employees where 1=2;
create table m

本文详述了Oracle 11g的安装步骤及解决安装问题的方法,对比了Oracle与其他数据库的差异。内容涵盖创建数据库、表的CRUD操作、查询、权限管理、存储过程使用和数据库安全,适合初学者进行数据库基础练习。

2254

被折叠的 条评论
为什么被折叠?



