好文档 - 专业文书写作范文服务资料分享网站

21天学通Oracle 课后答案(第三版)

天下 分享 时间: 加入收藏 我要投稿 点赞

Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

SQL>

·221·

在控制台上打印出的信息,可以清楚看到Oracle数据库的版本为10.1.0.2.0。

2.在对数据库进行重要操作时,首先应该确认数据库身份,以免在其他数据库上进行操作。尝试利用SQL Plus显示数据库实例名称。

1)利用SQL Plus登录数据库:

C:\\>sqlplus / as sysdba

SQL*Plus: Release 10.1.0.2.0 - Production on 星期日 7月 10 18:43:50 2011

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Connected to:

Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

SQL>

2)键入show parameter instance_name来查看实例名称

SQL> show parameter instance_name

NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ instance_name string orcl

3.试着利用SQL Plus来创建一个新表test (id number, name varchar2(20))。

可以通过如下步骤利用SQL Plus来创建一个新表: (1)利用SQL Plus登录数据库ORCL。

在Windows的【开始】|【运行】的【打开】文本框中输入sqlplus scott/abc123@orcl来登录数据库ORCL。

(2)在SQL Plus命令行下输入如下命令来创建新表test:

create table test (id number, name varchar2(20));

(3)在SQL Plus会出现表创建成功的提示,如图所示。

此时,证明表创建成功。

精品文档

· 222·

第4章 Oracle数据库

1.在数据库中创建一个表lob_source(id number, description clob)。将表lob_test的数据导入另外一个数据表lob_dest(id number, description clob)。

1)创建表lob_source

SQL> create table lob_source(id number, description clob);

Table created.

2)向表lob_source中插入测试数据

SQL> insert into lob_source values(1, 'a clob text from source');

1 row created.

3)创建测试表lob_dest

SQL> create table lob_dest(id number, description clob);

Table created.

4)向测试表lob_dest中插入测试数据,但是不包含clob类型的description列

SQL> insert into lob_dest(id) values(1);

1 row created.

5)利用表lob_source中的description信息,更新表lob_dest中的description信息。

SQL> update lob_dest set description = (select description from lob_source source where source.id = lob_dest.id);

1 row updated.

SQL> select * from lob_dest; IDDESCRIPTION

-------------------------------------------------- 1 a clob text from source

该实例实际说明了针对lob类型的数据的操作方式。由于lob类型的数据的特殊性,因此在实现数据库迁移时,如果遇到棘手的lob类型处理,可以考虑利用本例所演示的方法。

2.利用exp/imp方式,将数据库orcl中users表的内容,迁移到数据库test中。 1)在数据库orcl中,创建测试表users

SQL> create table users(user_id number, user_name varchar(20));

Table created.

SQL> insert into users values(1, 'allen');

1 row created.

SQL> insert into users values(2, 'mike'); 精品文档

1 row created.

SQL> commit;

Commit complete.

·223·

2)导出表users到d:\%user.bak

C:\\>exp system/abc123@//192.168.16.5/orcl tables=(users) file='d:/users.bak'

Export: Release 10.1.0.2.0 - Production on 星期三 7月 13 00:06:22 2011

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Connected to: Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set

About to export specified tables via Conventional Path ...

. . exporting table USERS 2 rows exported Export terminated successfully without warnings.

3)将d:\%user.bak的内容导入数据库test

C:\\>imp system/abc123@//192.168.16.5/test tables=(users) file='d:/users.bak'

Import: Release 10.1.0.2.0 - Production on 星期三 7月 13 00:10:09 2011

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Connected to: Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

Export file created by EXPORT:V10.01.00 via conventional path

import done in ZHS16GBK character set and AL16UTF16 NCHAR character set . importing SYSTEM's objects into SYSTEM

. . importing table \ 2 rows imported Import terminated successfully without warnings.

3.如果数据库处于归档模式,那么,随着时间的累积,归档日志将会占用很大空间。一旦达到默认大小20G,那么将导致数据库挂起,在告警日志中一般会有如下提示:ORA-00257: archiver error. Connect internal only, until freed。利用修改参数db_recovery_file_dest_size的方式,快速解决数据库无法归档的问题。

1)查看默认空间大小

SQL> show parameter db_recovery_file_dest_size

NAME TYPE VALUE ------------------------------------ ---------------

db_recovery_file_dest_size big integer 2G

2)修改其大小

精品文档

· 224·

SQL> alter system set db_recovery_file_dest_size=3G scope=both;

System altered.

这一用法,适合于快速处理现场由于归档日志过大导致的数据库挂起。

第5章 Oracle数据表对象

1.创建一个表空间testsize,其数据文件大小为2M,并设置自动增长尺寸为1M。在表空间中建立一个数据表,并向其中插入大量数据,观察表空间文件的变化。

1)创建一个大小为2M,自动增长尺寸为1M的表空间

SQL> create tablespace testsize datafile 'e:\\database\\oracle\\testsize_data.dbf' size 2M 2 autoextend on next 1M 3 /

Tablespace created

2)创建一个数据表test_tablespace_size(test_data varchar2(100))

SQL> create table test_tablespace_size(test_data varchar2(100)) tablespace testsize;

Table created

3)利用如下SQL语句向表test_tablespace_size中插入数据

SQL> begin

2 for i in 1..100000 loop

3 insert into test_tablespace_size values('0123456789'); 4 end loop; 5 commit; 6 end; 7 /

PL/SQL procedure successfully completed

4)此时,表空间文件testsize_data.dbf将增长为3M。 2.删除表空间testsize,同时删除其物理文件。

删除表空间应该使用drop tablespace命令,同时删除物理文件,应使用including contents and datafiles。

SQL> drop tablespace testsize including contents and datafiles;

Tablespace dropped.

3.在数据库中创建一个表test_bak,并向其中插入10条记录。利用exp/imp命令来实现该数据表的备份/恢复。

1)在数据库中创建表test_bak(id number)。

SQL> create table test_bak(id number);

Table created

2)向其中插入10条数据。

精品文档

SQL> begin

2 for i in 1..10 loop

3 insert into test_bak values(i); 4 end loop; 5 end; 6 /

PL/SQL procedure successfully completed

SQL> commit;

Commit complete

·225·

3)利用exp命令备份该表

C:\\>exp system/abc123@//192.168.16.5/orcl tables=(test_bak) file='d:/test_bak.bak'

Export: Release 10.1.0.2.0 - Production on 星期六 7月 16 14:51:54 2011

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Connected to: Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set

About to export specified tables via Conventional Path ...

. . exporting table TEST_BAK 10 rows exported Export terminated successfully without warnings..

4)在数据库中删除表test_bak。

SQL> drop table test_bak;

Table dropped

5)将表test_bak重新导入数据库

C:\\>imp system/abc123@//192.168.16.5/orcl tables=(test_bak) file='d:/test_bak.bak'

Import: Release 10.1.0.2.0 - Production on 星期六 7月 16 14:54:24 2011

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Connected to: Oracle Database 10gEnterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options

Export file created by EXPORT:V10.01.00 via conventional path

import done in ZHS16GBK character set and AL16UTF16 NCHAR character set . importing SYSTEM's objects into SYSTEM

. . importing table \ 10 rows imported Import terminated successfully without warnings. 精品文档

21天学通Oracle 课后答案(第三版)

OracleDatabase10gEnterpriseEditionRelease10.1.0.2.0-ProductionWiththePartitioning,OLAPandDataMiningoptionsSQL>·221·在控制台上打印出的信息,可以清楚看到Oracle数据库的版本为10.
推荐度:
点击下载文档文档为doc格式
4of240mr4k6x2111f20r4n7xz5ee5l00bj4
领取福利

微信扫码领取福利

微信扫码分享