`
percent
  • 浏览: 6999 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

如何在触发器中修改对象结构

 
阅读更多

create or replace trigger test_trigger
  before insert on test_tab 
  for each row
declare
  -- local variables here
begin

 

  alter sequence test_seq
   maxvalue 1000;
 
end test_trigger;
  上面的代码仅仅是通过触发事件来修改sequence的最大值;也就是执行了修改对象结构的语句;  显然这是不能编译通过的,除了手工执行像:

   alter sequence test_seq
   maxvalue 1000;
的语句有没有一种机制可以在触发器或过程里修改sequence或表结构之类的操作?

分享到:
评论

相关推荐

    Oracle通过触发器或者同义词避免用户修改表结构

    在Oracle数据库管理中,保护表结构的完整性和稳定性至关重要,特别是对于多用户环境下的系统,我们需要确保用户只能访问数据而不能随意更改表结构。本文将详细介绍如何通过触发器和同义词来避免用户修改表结构,这两...

    sqlserver2000触发器

    然而,即便是在SQL Server 2000的文档中表明可以在视图上创建触发器,但在实际操作中,这可能导致“对象无效”的错误。 在某些特定情况下,TRUNCATE TABLE和DELETE语句可以达到相同的效果,即删除表中的所有数据,...

    SQL Server2005触发器在图书管理系统中的应用研究.pdf

    DDL触发器响应数据定义语言事件,如创建、修改或删除数据库对象等管理任务。 在图书管理系统中,触发器可以用来完成各种功能,比如: 1. 跟踪数据变化:通过在关键数据表上设置触发器,可以监控数据的任何变化,...

    oracle触发器实现审计功能

    1. DDL(Data Definition Language)触发器:这类触发器在数据库对象(如表、视图、索引)的创建、修改或删除时激活。例如,你可以创建一个DDL触发器来记录所有对表结构的更改。 2. DML(Data Manipulation ...

    触发器

    此触发器会在每次员工薪水更改后,将旧薪资、新薪资和变更日期记录到`salary_history`表中。 此外,Oracle还支持复合触发器,可以同时处理多种DML操作,以及复合行级和语句级触发器,允许在单个触发器中处理整个...

    SQL Server数据库中触发器的管理.pdf

    DDL触发器用于对数据库结构相关的操作做出反应,如创建、修改或删除表、视图和其他数据库对象。DDL触发器常用于审核和记录数据库的结构变化,以及防止不期望的数据库对象的创建。 登录触发器是一种特殊的触发器,它...

    基于sql server 2005的触发器的创建及操作

    1. 使用图形界面:在SQL Server Management Studio(SSMS)中,可以通过对象资源管理器右键点击“触发器”目录,选择“新建触发器”,然后在设计界面编写T-SQL代码来创建触发器。 2. 使用T-SQL:直接在查询编辑器中...

    oracle触发器

    - **编译触发器**:如果触发器依赖的对象有更改,可能需要重新编译触发器以确保其正常工作,但直接使用 `ALTER TABLE trigger_name COMPILE;` 的语法不正确,正确的做法是先禁用触发器,然后重新启用。 - **删除...

    在MSSQLServer中创建触发器.pdf

    在Microsoft SQL Server中,触发器是一种特殊的存储过程,它的主要功能是在数据被修改时自动执行,以确保数据的完整性。触发器的引入弥补了主键和外键约束的不足,尤其是在处理跨数据库的参照完整性时。当对一个具有...

    触发器例子

    在该文件中,可能包含了创建触发器的SQL语句,或者是与触发器相关的数据库表结构和数据。通过分析这个文件,我们可以学习如何在iBATIS项目中使用触发器来增强数据库功能。 在数据库管理中,触发器的应用非常广泛,...

    触发器介绍

    - **DDL(数据定义语言)触发器**:当执行 DDL 语句如创建、修改或删除数据库对象时触发。这类触发器仅在 Oracle 中可用,并且只能是 `AFTER` 类型。 - **DML(数据操纵语言)触发器**:当执行 DML 操作如插入、删除...

    实验六-触发器实验报告.doc

    在多条件触发的触发器中,可以使用IF...THEN...END IF结构判断触发事件类型,如`IF Inserting THEN`、`IF Updating THEN`、`IF Deleting THEN`,分别对应插入、更新和删除操作。 行级触发器有一些限制需要注意,...

    MS SQL触发器简单测试使用

    2. 在对象资源管理器中,导航到你要创建触发器的表。 3. 右键点击“触发器”节点,选择“新建触发器”。 4. 编写T-SQL代码来定义触发器的行为,比如在插入新行时检查数据的有效性。 例如,一个简单的INSERT触发器...

    16.sql.server.2005.触发器 16.sql.server.2005.触发器

    SQL Server 2005中的触发器是一种数据库对象,它允许开发者在特定的数据库操作(如INSERT、UPDATE或DELETE)发生时执行自定义的SQL代码。这些操作被称为DML(数据操纵语言)事件,触发器则提供了对这些事件的响应...

    存储过程和触发器的编程

    而DDL触发器则用于监控对数据库对象的更改,提供了一种在数据库结构发生变化时自动执行任务的方式。 在实际应用中,存储过程和触发器经常结合使用。例如,在订单管理系统中,当新的订单被插入时,一个触发器可以...

    数据库触发器是一种存储过程

    例如,不能在触发器中使用创建(CREATE)、修改(ALTER)或删除(DROP)数据库对象的语句,也不能使用某些系统管理操作,如DISK或RESTORE。这主要是为了防止无限递归和潜在的数据库结构破坏。 以下是一个简单的...

    SQL中如何创建触发器.pdf

    触发器是一种特殊类型的存储过程,它在数据库中自动执行。SQL触发器主要用于响应对表的INSERT、UPDATE或DELETE操作。创建触发器能够在数据库中实施复杂的业务规则或数据完整性要求。以下是根据提供的文件内容生成的...

    SQL server 触发器,在触发Merge过程中,逐行触发的解决办法 用group by 避免是一次触发中的多行更新或删除。

    在SQL Server中,触发器是一种数据库对象,它可以在数据更改(INSERT、UPDATE或DELETE)时自动执行。在处理大量数据的Merge操作时,触发器可能会一次性处理多行,这可能导致性能问题或者不符合预期的行为。标题和...

Global site tag (gtag.js) - Google Analytics