我正在使用TypeORM,我想知道是否有办法阻止对数据库进行任何编辑。我不完全确定我的实体是否会在数据库中创建或编辑列或表,并且我不希望这种情况发生在设置表之间的关系时,我不希望TypeORM创建一个新的外键,如果它不存在。
答案 0 :(得分:1)
我想你可以创建一个引发异常的DDL触发器。
create or replace trigger prevent_ddl_trg
before ddl on schema
declare
begin
raise_application_error(-20001, 'DDL not allowed')
end;
在11.2及更高版本中,这似乎允许触发器本身改变和下降。
您可以停用:
alter trigger prevent_ddl_trg disable;
并启用:
alter trigger prevent_ddl_trg enable;
但要小心,你可以防止你不期望的事情,比如重置你自己密码的能力。