我可以像这样完全防止DELETE:
CREATE TRIGGER prevent_multiple_row_del
BEFORE DELETE ON ALL
BEGIN
RAISE EXCEPTION 'Cant delete more than 1 row at a time';
END;
但是如何检查删除操作是否会导致多行被删除?只要删除数量限制为常数(1、5或10,只要不是无限制),删除就不是问题。
另外,如何允许删除但防止完整表格被删除?
raise_application_error
是Oracle PL/SQL过程。 - user330315