Мне нужно удалить имя входа моего предшественника из DB2 LUW V10.1 в Windows.Я был в состоянии удалить из всех, за исключением некоторых пакетов схемы SYSIBMADM, для которых он дает приведенную ниже ошибку.Это оператор с ошибкой:
REVOKE BIND, EXECUTE, CONTROL ON PACKAGE SYSIBMADM.P9054818 FROM USER JJOHN
ОШИБКА [42893] [IBM] [DB2 / NT64] SQL0478N Оператор не выполнен, поскольку существует одна или несколько зависимостей от целевого объекта.Тип целевого объекта: «ПАКЕТ».Имя объекта, который зависит от целевого объекта: "SYSIBMADM.RAISE_APPLICATION_ERROR_2".Тип объекта, который зависит от целевого объекта: «ПРОЦЕДУРА».
Я должен удалить имя входа для целей аудита.У кого-нибудь есть идеи или указываете мне правильное направление?
SET CURRENT SCHEMA = SYSIBM;
SET CURRENT PATH = SYSIBM,SYSFUN,SYSPROC,SYSIBMADM;
CREATE OR REPLACE PROCEDURE SYSIBMADM.RAISE_APPLICATION_ERROR (
IN NUM INTEGER,
IN MSG VARCHAR(2000),
IN KEEPERRORSTACK BOOLEAN )
SPECIFIC RAISE_APPLICATION_ERROR_2
LANGUAGE SQL
NOT DETERMINISTIC
EXTERNAL ACTION
MODIFIES SQL DATA
CALLED ON NULL INPUT
INHERIT SPECIAL REGISTERS
OLD SAVEPOINT LEVEL
BEGIN
IF keeperrorstack IS NULL OR keeperrorstack = true THEN
CALL SYSIBMINTERNAL.SQLEML_RAISE_ERROR( -171, '3', 'RAISE_APPLICATION_ERROR', 'KEEPERRORSTACK' );
END IF;
CALL SYSIBMADM.RAISE_APPLICATION_ERROR( num, msg );
END;
GRANT EXECUTE ON SPECIFIC PROCEDURE SYSIBMADM.RAISE_APPLICATION_ERROR_2 TO PUBLIC WITH GRANT OPTION;
SET CURRENT SCHEMA = RGN;