Pular para o conteúdo
Visualizando 7 posts - 1 até 7 (de 7 do total)
  • Autor
    Posts
  • #106605
    CLAUDENIL DIAS PRADO
    Participante

      Boa Noite a todos…

      Pessoal efetuei os seguintes passos

      1- Criei a tabela:

      CREATE TABLE conf_usuarios (ID_CONF_USUARIOS integer,
      NOME_COMPLETO_CONF_USUARIOS varchar(80) NOT NULL,
      LOGIN_CONF_USUARIOS varchar(15) NOT NULL,
      SENHA_CONF_USUARIOS varchar(15) NOT NULL,
      ATIVO_CONF_USUARIOS varchar(1) NOT NULL,
      PRIMARY KEY (ID_CONF_USUARIOS))tablespace procseletivo;

      2- Criei a Sequence

      create sequence ID_CONF_USUARIOS_SEQ;

      alter sequence ID_CONF_USUARIOS_SEQ NOCACHE;

      3- Fui criar a Trigger
      create OR replace trigger trg_bi_conf_usuarios
      before insert on conf_usuarios
      for each row
      begin
      if :new.ID_CONF_USUARIOS is null then
      select ID_CONF_USUARIOS_SEQ.nextval
      into :new.ID_CONF_USUARIOS
      from dual;
      end if;
      end;

      Nesse momento é emitida a seguinte msg:

      [u][Error] Compilation (1: 29): ORA-04089: não é possível criar gatilhos nos objetos possuídos por SYS.
      [/u]
      Mas todos os passos acime executei como usuário Produção.

      E para esse usuário dei os seguintes GRANTS.

      GRANT DBA TO usuario;
      GRANT create session, alter session, create table, create procedure, create view, create materialized view, create trigger, create sequence, create any directory, create type, create synonym TO producao;

      Alguém pode me ajudar?

      Desde ja muito obrigado

      #106606
      Paulo Werneck
      Participante

        @CLAUDENIL

        cara usei dos mesmo códigos que vc postou, criei o user dei os mesmos grants e consegui criar os objetos na boa.

        conecta como producao, roda esses caras abaixo e verifica se retorna a tabela e a sequence que vc criou;

        select table_name from user_tables;
        select sequence_name from user_sequences;

        #106607
        CLAUDENIL DIAS PRADO
        Participante

          Amigo primeiramente obrigado pela atenção, rodei os selects e retornam a tabela e a sequence.

          #106608
          rman
          Participante

            @CLAUDENIL DIAS PRADO

            Será que não existe um SYNONYM apontando para um objeto do SYS?

            #106609
            CLAUDENIL DIAS PRADO
            Participante

              Ja verifiquei, não existe!

              #106610
              CLAUDENIL DIAS PRADO
              Participante

                Amigos RESOLVI efetuando da seguinte maneira:

                1- Dropei a Tabela e a recriei acrescentando CREATE TABLE PRODUCAO.conf_usuarios…conform e abaixo.

                CREATE TABLE PRODUCAO.conf_usuarios (ID_CONF_USUARIOS INT,
                NOME_COMPLETO_CONF_USUARIOS varchar(80) NOT NULL,
                LOGIN_CONF_USUARIOS varchar(15) NOT NULL,
                SENHA_CONF_USUARIOS varchar(15) NOT NULL,
                ATIVO_CONF_USUARIOS varchar(1) NOT NULL,
                PRIMARY KEY (ID_CONF_USUARIOS))tablespace procseletivo;

                2- Depois rodei:

                create sequence ID_CONF_USUARIOS_SEQ;

                alter sequence ID_CONF_USUARIOS_SEQ NOCACHE;

                3- Depois rodei a criação da TIRGGER, acrescentando PRODUCAO.conf_usuarios

                create OR replace trigger trg_bi_conf_usuarios
                before insert on PRODUCAO.conf_usuarios
                for each row
                begin
                if :new.ID_CONF_USUARIOS is null then
                select ID_CONF_USUARIOS_SEQ.nextval
                into :new.ID_CONF_USUARIOS
                from dual;
                end if;
                end;

                Mas só uma duvida como eu estava rodando a criação da tabela e da trigger no usuário PRODUCAO entendo que estes objetos são de propriedades do PRODUCAO ou seja não seria necessário acrescentar CREATE TABLE PRODUCAO.conf_usuarios, certo?

                Mas desde já agradeço a ateção.

                #106617
                rman
                Participante

                  @CLAUDENIL DIAS PRADO

                  Por padrão os objetos são criados no próprio schema quando não é especificado.

                Visualizando 7 posts - 1 até 7 (de 7 do total)
                • Você deve fazer login para responder a este tópico.
                plugins premium WordPress