Estas instruções presumem que você esteja utilizando o DB2 Universal Database e orientam sobre as seguintes tarefas:
As seguintes tarefas são opcionais:
Conclua as seguintes etapas:
No Windows:
Deve-se substituir install_dir pelo caminho para o diretório de instalação de seu produto DB2, como C:\PROGRA~1\IBM\SQLLIB. Esse local pode ser localizado usando-se o comando db2level:CREATE DB DBINPUT CONNECT TO DBINPUT BIND 'install_dir\bnd\@db2cli.lst' blocking all grant public TERMINATE
No Linux:
É necessário substituir install_dir pelo caminho do diretório de instalação do produto DB2. Esse local pode ser localizado usando-se o comando db2level:CREATE DB DBINPUT CONNECT TO DBINPUT BIND install_dir/bnd/@db2cli.lst grant public CLIPKG 5 TERMINATE
db2start
db2 -vf dbinput.sql
Próximas : Escolha uma das opções a seguir para criar as tabelas e acionadores de banco de dados:
Nota. Quando você cria e acessa as tabelas de banco de dados, fique atento como os seguintes problemas:
Crie as tabelas e acionadores de banco de dados:
CONNECT TO DBINPUT@ DROP TABLE "DBINPUT_CUSTOMER"@ CREATE TABLE "DBINPUT_CUSTOMER" ( "PKEY" VARCHAR(10) NOT NULL, "FIRSTNAME" VARCHAR(20), "LASTNAME" VARCHAR(20), "CCODE" VARCHAR(10) ) DATA CAPTURE NONE@ DROP TABLE "DBINPUT_EVENTS"@ CREATE TABLE "DBINPUT_EVENTS" ( "EVENT_ID" INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY ( START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 NO CYCLE NO CACHE), "OBJECT_KEY" VARCHAR(80) NOT NULL, "OBJECT_VERB" VARCHAR(40) NOT NULL ) DATA CAPTURE NONE@ ALTER TABLE "DBINPUT_CUSTOMER" ADD CONSTRAINT "DBINPUTCUSTOMERPK" PRIMARY KEY ("PKEY")@ ALTER TABLE "DBINPUT_EVENTS" ADD CONSTRAINT "DBINPUTEVENTPK" PRIMARY KEY ("EVENT_ID")@ CREATE TRIGGER "DBIN_CUST_CREATE" AFTER INSERT ON "DBINPUT_CUSTOMER" REFERENCING NEW AS N FOR EACH ROW INSERT INTO DBINPUT_EVENTS (OBJECT_KEY, OBJECT_VERB) VALUES (N.pkey, 'Create')@ CREATE TRIGGER "DBIN_CUST_DELETE" AFTER DELETE ON "DBINPUT_CUSTOMER" REFERENCING OLD AS O FOR EACH ROW INSERT INTO DBINPUT_EVENTS (OBJECT_KEY, OBJECT_VERB) VALUES (O.pkey, 'Delete')@ CREATE TRIGGER "DBIN_CUST_UPDATE" AFTER UPDATE ON "DBINPUT_CUSTOMER" REFERENCING NEW AS N FOR EACH ROW INSERT INTO DBINPUT_EVENTS (OBJECT_KEY, OBJECT_VERB) VALUES (N.pkey, 'Update')@ TERMINATE@
db2 -td@ -vf dbinput_create_tables_db2.sql
Aguarde a conclusão do script. Se você estiver executando o script pela primeira vez, a mensagem a seguir será exibida duas vezes:
DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. Durante o processamento SQL, ele retornou: SQL0204N "DB2ADMIN.DBINPUT_EVENTS" é um nome indefinido. SQLSTATE=42704Ignore ambas as mensagens. A mensagem é exibida porque o script tenta remover as tabelas existentes, DBINPUT_CUSTOMER e DBINPUT_EVENTS, antes de criar novas tabelas, mas se você não tiver executado o script antes, ele script não poderá localizar as tabelas existentes.
Se você estiver executando o script pela primeira vez, você poderá ver o aviso a seguir para cada um dos acionadores:
SQL0280W View, trigger or materialized query table "DB2ADMIN.DBIN_CUST_UPDATE" has replaced an existing inoperative view, trigger or materialized query table. SQLSTATE=01595É possível também ignorar essas mensagens.