Configurando o Oracle

Essas instruções presumem que você esteja utilizando um banco de dados Oracle e orienta sobre as seguintes tarefas:

Antes de começar

Você deve criar um banco de dados.

Nota. Quando você cria e acessa as tabelas de banco de dados, fique atento como os seguintes problemas:

  1. Abra um novo documento em um editor de texto, copie e cole o script a seguir, que cria a tabela DBINPUT_CUSTOMER, no documento, nomeie o arquivo como dbinput_create_tables_oracle.sql e salve-o.
    DROP TABLE "DBINPUT_CUSTOMER";
    CREATE TABLE "DBINPUT_CUSTOMER" (
    		"PKEY" VARCHAR(10) NOT NULL PRIMARY KEY,
    		"FIRSTNAME" VARCHAR(20),
    		"LASTNAME" VARCHAR(20),
    		"CCODE" VARCHAR(10)
    	);
    
    DROP TABLE "DBINPUT_EVENTS";
    CREATE TABLE "DBINPUT_EVENTS" (
    		"EVENT_ID" INTEGER PRIMARY KEY
    		"OBJECT_KEY" VARCHAR(80) NOT NULL,
    		"OBJECT_VERB" VARCHAR(40) NOT NULL
    	);
    
    CREATE SEQUENCE "DBINPUT_SEQUENCE" (start with 1 increment by 1 nomaxvalue);
    CREATE TRIGGER "DBIN_SEQ_TRIG"
      BEFORE INSERT ON "DBINPUT_EVENTS"
      FOR EACH ROW
      BEGIN
        SELECT DBINPUT_SEQUENCE.nextval INTO :NEW.EVENT_ID FROM dual;
      END;
    
    CREATE TRIGGER "DBIN_CUST_EVENT"
    	AFTER INSERT OR DELETE OR UPDATE ON "DBINPUT_CUSTOMER"
    	REFERENCING  NEW AS N OLD AS O
    	FOR EACH ROW
    	BEGIN
    		IF inserting THEN
    			INSERT INTO DBINPUT_EVENTS(OBJECT_KEY, OBJECT_VERB)
    				VALUES(:N.PKEY,'Create');
    		END IF;
    		IF updating THEN
    			INSERT INTO DBINPUT_EVENTS(OBJECT_KEY, OBJECT_VERB)
    				VALUES(:N.PKEY,'Update');
    		END IF;
    		IF deleting THEN
    			INSERT INTO DBINPUT_EVENTS(OBJECT_KEY, OBJECT_VERB)
    				VALUES(:O.PKEY,'Delete');
    		END IF;
    	END;
            
  2. Em uma janela de comando que foi aberta para acessar o banco de dados, mova para a pasta que contém o dbinput_create_tables_oracle.sql e insira o seguinte comando:
    sqlplus <uid>/<password> @dbinput_create_tables_oracle.sql

    Aguarde a conclusão do script. Se estiver executando o script pela primeira vez, a mensagem a seguir é exibida:

    ORA-00942: table or view does not exist
    Ignore essa mensagem. A mensagem é exibida porque o script tenta remover as tabelas existentes, DBINPUT_CUSTOMER e DBINPUT_EVENTS, antes de criar novas tabelas, mas se o script não for executado antes, ele não poderá localizar a tabela existente.

Voltar para Configurando o Banco de Dados

Voltar para o início da Amostra