Oracle数据库系统操作详解:视图、序列与触发器

需积分: 9 1 下载量 92 浏览量 更新于2024-09-20 收藏 40KB DOC 举报
"Oracle数据库系统视频教程笔记" Oracle数据库系统是一个广泛应用的关系型数据库管理系统,它提供了丰富的功能和工具来管理和处理复杂的数据。以下是一些在Oracle中常用的关键概念和操作: 1. 视图 (View): 视图是基于一个或多个表的虚拟表,它允许用户以定制的方式查看数据。在示例中,`CREATE OR REPLACE VIEW myview AS SELECT * FROM books WHERE price > 30;` 创建了一个名为`myview`的视图,显示所有价格超过30的书籍。 2. 同义词 (Synonym): 同义词是数据库对象的一个别名,方便用户访问。例如,`CREATE SYNONYM dept FOR scott.dept;` 创建了一个名为`dept`的同义词,指向`scott`用户下的`dept`表。`DROP SYNONYM dept;`则是删除这个同义词。 3. 序列 (Sequence): 序列是自动生成唯一数值的数据库对象,常用于主键生成。`CREATE SEQUENCE myseq START WITH 1 INCREMENT BY 1 ORDER NOCYCLE;` 创建了一个名为`myseq`的序列,起始值为1,每次递增1,且不会循环回零。`SELECT myseq.NEXTVAL FROM dual;` 获取下一个序列号,`SELECT myseq.CURRVAL FROM dual;` 获取当前序列号。`ALTER SEQUENCE myseq INCREMENT BY 3;` 修改序列的递增值为3。 4. 触发器 (Trigger): 触发器是一种在特定数据库操作(如INSERT、UPDATE、DELETE)发生时自动执行的存储过程。示例中展示了行级触发器`del_deptid`和`books_delete`,它们分别在部门表和书籍表的删除操作后执行特定逻辑,如删除关联的员工记录或阻止特定书籍的删除。 5. 事务 (Transaction): Oracle中的事务管理确保数据的一致性。`COMMIT`用于提交事务,写入到磁盘并使更改生效;`ROLLBACK`则用于撤销未提交的事务。`SELECT * FROM books FOR UPDATE;` 用于锁定记录,防止其他会话修改。 6. 表达式级别的触发器: `CREATE TABLE mylog...` 和 `CREATE OR REPLACE TRIGGER dml_aa` 示例展示了在表级别操作(INSERT、DELETE、UPDATE)后,如何记录日志信息的语句级触发器。它根据操作类型(插入、删除、更新)将活动记录到`mylog`表。 7. 自动增长字段 (Auto-increment fields): Oracle中可以通过触发器实现类似其他数据库系统的自动增长字段功能,例如`CREATE OR REPLACE TRIGGER set`(示例不完整,但通常会在此处设置对某个字段的自动递增逻辑)。 这些是Oracle数据库系统中的一些基本概念和操作,掌握它们对于理解和使用Oracle数据库至关重要。在实际应用中,还需要学习索引、存储过程、分区、备份与恢复、性能优化等更多高级主题。