[firebase-br] "DO SUSPEND"

Mário Reis mariodosreyx em gmail.com
Terça Novembro 14 10:55:33 -03 2023


Encontrei parte da resposta: select rdb$owner_name from rdb$relations where
rdb$relation_name like 'IBUC%' resulta "ADM" logo terei th me logar com
este user:
"RDB$OWNER_NAME" "RDB$RELATION_NAME"
"ADM"                                        "IBUCTABRIGHTS"
"ADM"                                        "IBUCTABRIGHTSEX"
"ADM"                                        "IBUCTABUSERSLOGGED"
"ADM"                                        "IBUCLOG"
"ADM"                                        "IBUCTABUSERS"
e selecionar especificamente estas tabelas, porque de outro modo dará o
mesmo erro para as demais... e deu certo. Resolvido este
mas num outro não. porque quem deu Grant para o insert não foi o ADM nem o
SYSDBA
Como faço para ver quem deu Grant para o insert, update etc...?
Alguém me pode ajudar?
Com os meus melhores cumprimentos
Mário Agostinho Reis
919262146

Esta mensagem contém informação de natureza confidencial e é
exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por engano,
receber este email agradecemos que não o copie nem o reenvie e que nos
notifique do ocorrido através do email de resposta.


Mário Reis <mariodosreyx em gmail.com> escreveu no dia terça, 14/11/2023 à(s)
12:21:

> Bom dia/tarde Gladiston,
> Estou a seguir o V/ conselho de não dar permissões aos users e ao tentar
> revok para o ADM (um user muito velho que uso quase desde de sempre) recebo
> esta mensagem
> mega estranha:
> SYSDBA is not grantor of INSERT on IBUCTABUSERSLOGGED to ADM.  SQL Code:
> -607 IB Error Number: 335544351
> Ora o [IB ]UCTABUSERSLOGGED é o mesmo que o  UCTABUSERSLOGGED do USers
> Control Component e a tabela foi(são) criado automaticamente a primeira vez
> que se entra
> na aplicação com o UCUSERS Control activo.
> Não sendo o SYSDBA, como posso saber onde posso ver quem foi o "USER"
> criou estas tabelas !? Obrigado
>
>
> Com os meus melhores cumprimentos
> Mário Agostinho Reis
> 919262146
>
> Esta mensagem contém informação de natureza confidencial e é
> exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por engano,
> receber este email agradecemos que não o copie nem o reenvie e que nos
> notifique do ocorrido através do email de resposta.
>
>
> Gladiston Santana <gladiston.santana em gmail.com> escreveu no dia quarta,
> 8/11/2023 à(s) 13:51:
>
>> Se estiver dando erro na linha da exception é provavelmente porque você
>> não criou a exception com o nome de 'EX_BAD_SP_NAME' .
>>
>> Em qua., 8 de nov. de 2023 às 07:34, Mário Reis <mariodosreyx em gmail.com>
>> escreveu:
>>
>>> Olá bom dia Gladiston e pessoal da Lista,
>>> Estou com uma dificuldade, criada pela documentação oficial:
>>>
>>> https://firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-psql-exceptparams.html
>>> e prende-se exatamente com este exemplo que nem sequer compila!?:
>>> CREATE TRIGGER TRG_SP_CREATE BEFORE CREATE PROCEDURE
>>> AS
>>> DECLARE SP_NAME VARCHAR(255);
>>> BEGIN
>>>   SP_NAME = RDB$GET_CONTEXT('DDL_TRIGGER', 'OBJECT_NAME');
>>>
>>>   IF (SP_NAME NOT STARTING 'SP_')
>>>   THEN EXCEPTION EX_BAD_SP_NAME USING ('SP_', SP_NAME);
>>> END;
>>>   Ainda tentei criar o trigger como database trigger mas também não dá!
>>>  Tentei, na minha trigger "TRG_LIGARSE"
>>>  RDB$SET_CONTEXT('DDL_TRIGGER', 'OBJECT_NAME','TRG_LIGARSE' );
>>> SP_NAME = RDB$GET_CONTEXT('DDL_TRIGGER', 'OBJECT_NAME');
>>> Certamente que é um exemplo académico, quiçá, infeliz!
>>> Ou, quem sabe, onde me perdi?
>>>
>>>


Mais detalhes sobre a lista de discussão lista