第 8 章:管理模式对象
返回课程列表
模式是一个数据库对象的集合。模式为一个数据库用户所有,并具有与该用户相同的名称。模式对象是由用户创建的逻辑结构,用以包含或引用他们的数据。模式对象包含诸如表、视图和索引之类的结构。您可以使用 Oracle Enterprise Manager 来创建和操作模式对象。
本章讨论了下面几个主题:
| 访问模式对象 | ||
| 管理表 | ||
| 管理索引 | ||
| 管理视图 | ||
| 管理数据库驻留程序单元 | ||
| 加载数据到表中 | ||
查看屏幕截图
将鼠标移到这个图标上,显示所有的屏幕截图。您还可以将鼠标移到各个图标上,以只查看与该图标相关的屏幕截图。
执行下面的步骤,使用 Enterprise Manager 访问模式对象:
| 1. |
打开浏览器,并指定用户名和密码为 SYS ,以登录到 Enterprise Manager Database Console。 单击 Login。
|
| 2. |
单击 Administration 并选择 Tables 链接。
|
| 3. |
选择 flashlight 图标以选择一种特定的模式。
|
| 4. |
选择 HR 并单击 Select。
|
| 5. |
在 Object Name 域中输入 emp 并单击 Go。
|
| 6. |
显示出与您的搜索条件相匹配的对象。
|
管理表
表是 Oracle 数据库中数据存储的基本单元。它们保存了所有用户可访问的数据。每一个表都包含列和行。在这一部分中,您将执行以下任务:
| 查看表的属性 | ||
| 查看表的内容 | ||
| 创建新表 | ||
| 修改表 | ||
| 丢弃表 | ||
查看表的属性
执行下面的步骤,查看 HR.EMPLOYEES 表的属性:
| 1. |
选择 EMPLOYEES 表并单击 View。
|
| 2. |
出现 Table View 页,其中显示了包含有列、约束和存储选项的表属性。 单击 Tables 链接,返回到 Tables 属性页。
|
查看表的内容
执行下面列出的步骤以查看 HR.EMPLOYEES 表的内容:
| 1. |
选择 EMPLOYEES 表并从 Actions 下拉菜单中选择 View Data。单击 Go。
|
| 2. |
出现 View Data For Table 页,其中显示了 Results 区中的行数据。
|
创建新表
在本节中,您将为数据库创建三个新表:EMPLOYEES、CUSTOMERS 和 ORDERS。
| 1. |
单击 Tables 属性页上的 Create 。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2. |
创建表:出现 Table Organization 页。选择 Standard, Heap Organized 并单击 Continue。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3. |
出现 Create Table 页。在 Name 域中输入 employees。在 Schema 域中输入 fsowner。在 Tablespace 域中输入 fsdata。定义如下的列,并单击 Add 5 Table Columns。 EMPLOYEE_ID NUMBER(6)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4. |
输入如下剩余的列: HIRE_DATE DATE 单击 Constraints。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 5. |
出现 Constraints 页。从下拉菜单中选择 Primary 并单击 Add。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 6. |
出现 Add Primary Constraint 页。在 Name 域中输入 emp_id_pk。在 Available Columns 列表中选择 EMPLOYEE_ID。单击 Move 并选中。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 7. |
出现 Create Table 页。单击 OK。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 8. |
出现 Table 页,其中含 Update 消息,指示您的表已创建。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 9. |
重复步骤 2 到 8,按如下定义的格式在 FSOWNER 模式中创建 CUSTOMERS 和 ORDERS 表。
|
修改表
您可以使用 Enterprise Manager 修改表,如添加和删除列或添加约束。在本节,您将添加一个约束到您创建的 EMPLOYEES 表上。您将通过添加一个 NOT NULL 约束来确保 EMAIL_ADDRESS 列包含一个值。
执行以下的步骤,添加一个 NOT NULL 约束到您的 EMPLOYEES 表上:
| 1. |
选择 EMPLOYEES 表并单击 Edit。
|
| 2. |
为 EMAIL_ADDRESS 列检查 Not NULL 列。单击 Apply。
|
| 3. |
显示 Edit Table 页,其中包含有确认更新的消息。
|
丢弃表
您可以使用 Enterprise Manager 按如下方式丢弃(删除)表。出于本次练习的目的,您将创建一个新表然后删除该表。
| 1. |
在 Administration 页上的 Schema 部分中单击 Tables 链接以访问 Schema objects 属性页。在 Object Type 下拉菜单中选择 Table。在 Schema Name 域中输入 HR ,并在 Object Name 域中输入 JOBS。单击 Go。
|
| 2. |
从 Actions 下拉菜单中选择 Create Like 。单击 Go。
|
| 3. |
出现 Create Table 页。在 Name 域中输入 JOBS_HIST。为 JOB_ID 列和 JOB_TITLE 列取消选择 Not Null。单击 Constraints。
|
| 4. |
出现 Constraints 页。通过选择表上的每一个约束并单击 Delete,可删除该表上的约束。本次练习不需要这些约束。单击 General 以返回到 General 页。
|
| 5. |
单击 OK 创建 JOBS_HIST 表。
|
| 6. |
显示一条消息,指示已创建表。
|
| 7. |
在 Object Name 域中输入 JOBS_HIST 并单击 Go。
|
| 8. |
显示 Tables 页,其中在 Results 部分中带有 JOBS_HIST 表。单击 Delete 以删除 JOBS_HIST 表。
|
| 9. |
单击 Yes 确认删除表。
|
| 10. |
显示一条消息,指示已删除表。单击 Go 以尝试取回表。
|
| 11. |
在结果区中显示 No object found ,指示表已丢弃(删除)。
|
管理索引
索引是与表关联的可选结构,可用于改进查询的性能。索引提供了对表数据的快速访问路径。可以在表的一个或多个列上创建索引。创建好索引后,Oracle Database 服务器将自动维护和使用它。对表的数据或结构所作的更改会自动合并进所有相关的索引中,它对于用户是完全透明的。
在本节,您将执行以下任务:
| 查看索引的属性 | ||
| 创建新索引 | ||
查看索引的属性
执行下面列出的步骤,以在您的 FSOWNER 模式中查看索引的属性:
| 1. |
在 Administration 页上的 Schema 部分中单击 Indexes 链接以访问 Indexes 属性页。
|
| 2. |
出现 Indexes 页。在 Schema Name 域中输入 FSOWNER并单击 Go。
|
| 3. |
显示出在您定义主键时所创建的索引。通过单击索引名链接,选择在 EMPLOYEES 表上创建的 EMP_ID_PK索引。
|
| 4. |
显示出 EMPLOYEES 表的 EMP_ID_PK 索引。 选择 Indexes 链接以返回到 Indexes 属性页。
|
创建新索引
在 ORDERS 表的 CUSTOMER_ID 列上创建一个索引,以使您能够快速访问特定客户的所有订单。该索引将存储在 FSINDEX 表空间中。
执行下面列出的步骤以创建 ORD_CUSTID_IDX 索引:
| 1. |
从 Object Type 中选择 Tables。在 Schema 域中输入 FSOWNER并单击 Go
|
| 2. |
出现 Tables 页。选择 ORDERS 表并从 Actions 下拉菜单中选择 Create Index。单击 Go。
|
| 3. |
出现 Create Index 页。在 Name 域中输入 ORD_CUSTID_INDX。在 Tablespace 域中输入 fsindex。选择 Standard B-tree 作为索引类型。在 Order 列中输入 1 ,以选择 CUSTOMER_ID列。接受 ASC 作为排序顺序。单击 OK 创建索引。
|
管理视图
视图是一个或多个表或其他视图中的数据的自定义显示。它们可以被看作存储的查询。视图并不真正包含数据,相反
它们是从它们所基于的表中获取它们的数据。这些表被称为视图的基表。与表一样,视图可以通过某些限制条件执行查询、更新、插入和删除操作。在视图上执行的所有操作实际上影响的是视图的基表。通过限制对预先确定的表的行列集的访问,视图提供了一个额外的安全等级。它们还隐藏了数据复杂性并存储复杂的查询。在本节,您将执行以下任务:
| 访问视图 | ||
| 创建新视图 | ||
访问视图
执行下面列出的步骤以访问视图:
| 1. |
在 Administration 页的 Schema 部分中选择 Views。在 Schema Name 域中输入 HR 并单击 Go。
|
| 2. |
显示了定义在 HR 模式中的表上的视图。选择 EMP_DETAILS_VIEW 并单击 View 以查看其定义。
|
| 3. |
显示 View 页,提供了视图的定义。 选择 Views 链接。
|
创建新视图
执行下面列出的步骤以创建一个新视图:
| 1. |
在 Views 属性页上单击 Create 。
|
| 2. |
输入下面的信息并单击 OK。 View name:CLERK10_ORDS SELECT order_id, customer_id, order_total FROM orders WHERE sales_clerk_id = 10
|
| 3. |
显示 Views 页,确认视图已创建。 选择 Database 链接。
|
管理数据库驻留的程序单元
您可以使用 Enterprise Manager 来管理数据库驻留的程序单元,如 PL/SQL 包、过程、触发器和函数、以及 Java 源和类。这些操作包括创建和编译数据库驻留的程序单元、为数据库驻留的程序单元创建别名、授权使用数据库驻留的程序单元、以及显示数据库驻留的程序单元的依赖性。
| 1. |
在 Administration 页上的 Schema 部分中单击 Procedures 链接。
|
| 2. |
在 Schema 域中输入 hr 并单击 Go。
|
| 3. |
选择ADD_JOB_HISTORY 过程。从下拉菜单中选择 Grant Privileges 并单击 Go。
|
| 4. |
选择 EXECUTE 作为权限并选择 FSOWNER 作为用户。单击 OK。
|
加载数据到表中
您可以使用 Enterprise Manager 来成批地加载数据到表中。当您有许多数据时,批量加载是方便的。您可以加载来处操作系统文件或
其他的数据库的数据。您还可以导出数据到文件中。一种加载的方法是使用控制 (.ctl) 和数据 (.dat) 文件。这些文件被转化为标准的 SQL*Loader 文件格式。SQL*Loader 是一种实用工具,您可以用它来把外部文件的数据加载到 Oracle 数据库的表中。
在本节,您将使用 load_cust.ctl 文件把客户信息加载到您的 FSOWNER.CUSTOMERS 表中。创建一个名称为 $HOME/labs 的目录。下载 load_cust.zip 文件并解压缩 load_cust.ctl 和 load_cust.dat 文件到 $HOME/labs 中,以为本节所用。
| 1. |
在 Maintenance 页上的 Utilities 部分中单击 Load Data From File 链接。
|
| 2. |
出现 Load Data: Control File 页。输入您数据库服务器机器上的控制文件的完整路径。同时输入主机的用户名和密码。单击 Next。
|
| 3. |
出现 Load Data: Data File 页。选择 在控制文件中指定的数据文件。单击 Next。
|
| 4. |
出现 Load Data: Load Method 页。接受默认的 Conventional Path 作为加载方法。单击 Next。
|
| 5. |
出现 Load Data: Options 页在 Optional Files 部分中选择 Generate log file 页。您可以接受默认的文件名和路径或输入不同的文件名或路径。单击 Next。
|
| 6. |
出现 Load Data: Schedule 页。在 Job Name 域中输入名称并在 Description 域中输入说明。选择 Immediately 以立即运行作业。单击 Next。
|
| 7. |
出现 Load Data: Review 页。查看您的文件名和加载方法。如果您想更改一些信息,可以单击 Back 按钮。否则,单击 Submit Job 以开始加载。
|
| 8. |
出现 Status 页,其中包含一条消息,指示加载数据提交成功。单击 View
|
| 9. |
该一览表页将提示作业已成功完成。如果不是这样,您可以在您的作业上的 Logs 标题下方单击来查看日志,也可以直接查看日志文件。
|
| 10. |
您可以转至 Tables 页,并选择表,然后选择 View Data,来确认数据加载。单击 Go。
|
| 11. |
您加载的行显示在 View Data for Table:FSOWNER.CUSTOMERS 页上。单击 OK 返回到 Tables 属性页。 |



浙公网安备 33010602011771号