0

我一直在使用 Oracle SQL Developer Data Modeler 创建我们数据库的关系模型。我们的表中需要一个自动递增的 ID,所以我创建了一个脚本,放置在 Table Properties > Scripts > After Create 部分中。但我遇到的问题是需要更改每个表的数据库、序列和触发器的名称。

因此,如果我们不得不以任何方式重命名表,那么去更改脚本就会变得很麻烦。

我想知道有没有办法从脚本区域引用表名?像变量、模板还是占位符?

这是我的脚本示例:

CREATE SEQUENCE table_Seq
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER table_Trigger
BEFORE INSERT
ON table
REFERENCING NEW AS NEW
FOR EACH ROW
BEGIN
SELECT table_Seq.nextval INTO :NEW.ID FROM dual;
END;
/

谢谢

4

1 回答 1

0

在发现 Oracle SQL Developer Data Modeler 中有一个内置函数来处理序列和触发器后,我已经解决了这个问题。

要访问此界面...

  1. 打开表属性(在关系模型视图中双击表对象)。
  2. 从左侧的菜单树中选择“列”。
  3. 双击要为其创建序列和触发器的列。
  4. 从左侧的菜单树中选择“自动增量”。(填写信息以创建此列的序列)
  5. 选中“生成触发器”复选框,让它自动为此序列生成触发器。
于 2012-09-19T22:38:05.937 回答