CREATE TABLE LOCAL_APOIO ( loa_codigo INTEGER NOT NULL, loa_nome VARCHAR(18) NOT NULL, loa_cidade VARCHAR(18) NOT NULL, loa_gerente VARCHAR(18) NOT NULL, PRIMARY KEY (loa_codigo) ); CREATE TABLE RH ( rch_codigo VARCHAR(18) NOT NULL, rch_nome VARCHAR(18) NOT NULL, rch_endereco VARCHAR(18), rch_adm DATE, loa_codigo INTEGER NOT NULL, rch_cargo VARCHAR(18) NOT NULL, rch_cpf INTEGER, rch_rg VARCHAR(20), rch_telefone INTEGER, PRIMARY KEY (rch_codigo), FOREIGN KEY (loa_codigo) REFERENCES LOCAL_APOIO ); CREATE TABLE MOTORISTA ( rch_codigo VARCHAR(18) NOT NULL, mot_habilitacao VARCHAR(15), mot_nascimento DATE, mot_experiencia INTEGER, PRIMARY KEY (rch_codigo), FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE MODELO ( mod_modelo VARCHAR(20) NOT NULL, mod_fabricante VARCHAR(20), mod_tipo VARCHAR(20), mod_capacidade INTEGER, mod_pontencia INTEGER, mod_largura FLOAT, mod_comprimento FLOAT, PRIMARY KEY (mod_modelo) ); CREATE TABLE RECURSO_FISICO ( rcf_codigo INTEGER NOT NULL, rcf_descricao VARCHAR(18) NOT NULL, rcf_tipo VARCHAR(18), loa_codigo INTEGER NOT NULL, PRIMARY KEY (rcf_codigo), FOREIGN KEY (loa_codigo) REFERENCES LOCAL_APOIO ); CREATE TABLE RECURSO_PERMANETE ( rcf_codigo INTEGER NOT NULL, rpe_patrimonio VARCHAR(18), rpe_utilidade VARCHAR(18), PRIMARY KEY (rcf_codigo), FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_FISICO ); CREATE TABLE VEICULO ( rcf_codigo INTEGER NOT NULL, vei_placa CHAR(18) NOT NULL, vei_km_atual INTEGER, vei_ano INTEGER, vei_tipo VARCHAR(20), vei_chassis VARCHAR(20), mod_modelo VARCHAR(20) NOT NULL, vei_cor VARCHAR(10), PRIMARY KEY (rcf_codigo), FOREIGN KEY (mod_modelo) REFERENCES MODELO, FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_PERMANETE ); CREATE TABLE FORNECEDOR ( for_cnpj VARCHAR(18) NOT NULL, for_nome VARCHAR(18) NOT NULL, for_endereco VARCHAR(18) NOT NULL, for_contato VARCHAR(18), for_tipo VARCHAR(18), PRIMARY KEY (for_cnpj) ); CREATE TABLE CONTRATO ( ctt_codigo INTEGER NOT NULL, ctt_data_inicio DATE, ctt_data_fim DATE, ctt_valor INTEGER, ctt_descr VARCHAR(18), PRIMARY KEY (ctt_codigo) ); CREATE TABLE CONTRATO_FORNECEDOR ( ctt_codigo INTEGER NOT NULL, for_cnpj VARCHAR(18) NOT NULL, cof_observacao VARCHAR(18), PRIMARY KEY (ctt_codigo), FOREIGN KEY (for_cnpj) REFERENCES FORNECEDOR, FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO ); CREATE TABLE TREINAMENTO ( ctt_codigo INTEGER NOT NULL, tre_descricao VARCHAR(18) NOT NULL, tre_pre_requisito VARCHAR(18), tre_validade VARCHAR(18), tre_valor CHAR(18), PRIMARY KEY (ctt_codigo), FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO_FORNECEDOR ); CREATE TABLE BANCO ( ban_cod INTEGER NOT NULL, ban_descr VARCHAR(18), ban_telef VARCHAR(18), PRIMARY KEY (ban_cod) ); CREATE TABLE AGENCIA ( age_cod INTEGER NOT NULL, ban_cod INTEGER NOT NULL, age_descr VARCHAR(18), age_numconta INTEGER, PRIMARY KEY (age_cod), FOREIGN KEY (ban_cod) REFERENCES BANCO ); CREATE TABLE TITULO ( tit_num INTEGER NOT NULL, tit_descr VARCHAR(18), tit_dtemissao DATE, tit_valor FLOAT, tit_valortaxas FLOAT, tit_dtvencimento DATE, tit_dtliquidacao DATE, tit_situacao VARCHAR(18), tit_valordesconto FLOAT, ctt_codigo INTEGER NOT NULL, age_cod INTEGER NOT NULL, PRIMARY KEY (tit_num), FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO, FOREIGN KEY (age_cod) REFERENCES AGENCIA ); CREATE TABLE TIPOCUSTO ( tip_codigo CHAR(18) NOT NULL, tip_especie CHAR(18), tip_nome CHAR(18), tip_ultimocusto NUMERIC, tip_kmtroca INTEGER, PRIMARY KEY (tip_codigo) ); CREATE TABLE TIPO_QUALIFICACAO ( tqu_codigo VARCHAR(18) NOT NULL, tqu_area VARCHAR(18) NOT NULL, tqu_nivel VARCHAR(18), PRIMARY KEY (tqu_codigo) ); CREATE TABLE SOLICITACAO ( sol_cod INTEGER NOT NULL, sol_descr VARCHAR(18), sol_cargesp VARCHAR(18), sol_descarga VARCHAR(18), sol_txurg NUMERIC, sol_km NUMERIC, sol_pesodim NUMERIC, PRIMARY KEY (sol_cod) ); CREATE TABLE AREA ( are_id INTEGER NOT NULL, are_nome VARCHAR(30), are_velmax INTEGER, are_status INTEGER NOT NULL, PRIMARY KEY (are_id) ); CREATE TABLE PONTO ( pon_id INTEGER NOT NULL, pon_nome VARCHAR(20) NOT NULL, pon_coord_x INTEGER NOT NULL, pon_coord_y INTEGER NOT NULL, are_id INTEGER NOT NULL, PRIMARY KEY (pon_id), FOREIGN KEY (are_id) REFERENCES AREA ); CREATE TABLE PREFERENCIAL ( pre_id INTEGER NOT NULL, pre_descricao VARCHAR(18), pre_nome VARCHAR(40), PRIMARY KEY (pre_id) ); CREATE TABLE CLIENTE ( cli_codigo INTEGER NOT NULL, cli_nome VARCHAR(18), cli_rbc VARCHAR(18), cli_cidade VARCHAR(18), cli_telefone VARCHAR(18), cli_email CHAR(18), cli_senha CHAR(6), cli_cpfcnpj CHAR(20), cli_doc VARCHAR(20), pre_id INTEGER, pon_id INTEGER, PRIMARY KEY (cli_codigo), FOREIGN KEY (pon_id) REFERENCES PONTO, FOREIGN KEY (pre_id) REFERENCES PREFERENCIAL ); CREATE TABLE SOL_CLI ( cli_codigo INTEGER NOT NULL, sol_cod INTEGER NOT NULL, scl_data DATE, PRIMARY KEY (cli_codigo, sol_cod), FOREIGN KEY (cli_codigo) REFERENCES CLIENTE, FOREIGN KEY (sol_cod) REFERENCES SOLICITACAO ); CREATE TABLE RH_TREINAMENTO ( rch_codigo VARCHAR(18) NOT NULL, ctt_codigo INTEGER NOT NULL, rht_data DATE, PRIMARY KEY (rch_codigo, ctt_codigo), FOREIGN KEY (ctt_codigo) REFERENCES TREINAMENTO, FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE SERVICO ( srv_codigo INTEGER NOT NULL, srv_tipo INTEGER NOT NULL, srv_descricao VARCHAR(18), srv_valor INTEGER, PRIMARY KEY (srv_codigo) ); CREATE TABLE CONTATO ( cnt_codigo INTEGER NOT NULL, cnt_nome VARCHAR(18), cnt_telefone CHAR(18), cnt_email CHAR(18), PRIMARY KEY (cnt_codigo) ); CREATE TABLE ATENDIMENTO_TELEFONICO ( afn_codigo INTEGER NOT NULL, cnt_codigo INTEGER, afn_dpt VARCHAR(18), srv_codigo INTEGER, afn_data DATE, afn_situacao VARCHAR(18), cli_codigo INTEGER, rch_codigo VARCHAR(18), PRIMARY KEY (afn_codigo), FOREIGN KEY (rch_codigo) REFERENCES RH, FOREIGN KEY (cli_codigo) REFERENCES CLIENTE, FOREIGN KEY (srv_codigo) REFERENCES SERVICO, FOREIGN KEY (cnt_codigo) REFERENCES CONTATO ); CREATE TABLE CONTRATO_CLIENTE ( ctt_codigo INTEGER NOT NULL, sol_cod INTEGER NOT NULL, cli_codigo INTEGER NOT NULL, afn_codigo INTEGER, PRIMARY KEY (ctt_codigo), FOREIGN KEY (afn_codigo) REFERENCES ATENDIMENTO_TELEFONICO, FOREIGN KEY (cli_codigo, sol_cod) REFERENCES SOL_CLI, FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO ); CREATE TABLE MERCADORIA ( mer_cod INTEGER NOT NULL, mer_descricao VARCHAR(50), mer_peso NUMERIC, PRIMARY KEY (mer_cod) ); CREATE TABLE ROTA ( rot_id INTEGER NOT NULL, rot_descricao CHAR(18), rot_nome VARCHAR(20), PRIMARY KEY (rot_id) ); CREATE TABLE MISSAO ( mis_id INTEGER NOT NULL, mis_inicio DATE, mis_termino DATE, rot_id INTEGER, mer_cod INTEGER, ctt_codigo INTEGER, PRIMARY KEY (mis_id), FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO_CLIENTE, FOREIGN KEY (mer_cod) REFERENCES MERCADORIA, FOREIGN KEY (rot_id) REFERENCES ROTA ); CREATE TABLE ATENDIMENTO ( atd_codigo INTEGER NOT NULL, atd_data_inicio DATE NOT NULL, atd_hora_fim DATE NOT NULL, atd_hora_inicio DATE, atd_data_fim DATE NOT NULL, atd_observacoes VARCHAR(18) NOT NULL, mis_id INTEGER, PRIMARY KEY (atd_codigo), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE RH_ATENDIMENTO ( atd_codigo INTEGER NOT NULL, rch_codigo VARCHAR(18) NOT NULL, rha_tarefa VARCHAR(18) NOT NULL, rca_desempenho VARCHAR(18), PRIMARY KEY (atd_codigo, rch_codigo), FOREIGN KEY (rch_codigo) REFERENCES RH, FOREIGN KEY (atd_codigo) REFERENCES ATENDIMENTO ); CREATE TABLE RF_ATENDIMENTO ( atd_codigo INTEGER NOT NULL, rcf_codigo INTEGER NOT NULL, rfa_quantidade INTEGER, rfa_data_saida INTEGER, rfa_data_chegada INTEGER, PRIMARY KEY (atd_codigo, rcf_codigo), FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_FISICO, FOREIGN KEY (atd_codigo) REFERENCES ATENDIMENTO ); CREATE TABLE QUALIFICACAO ( rch_codigo VARCHAR(18) NOT NULL, tqu_codigo VARCHAR(18) NOT NULL, qua_local VARCHAR(18) NOT NULL, qua_periodo VARCHAR(18), PRIMARY KEY (rch_codigo, tqu_codigo), FOREIGN KEY (tqu_codigo) REFERENCES TIPO_QUALIFICACAO, FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE PLANEJAMENTO ( pla_numero INTEGER NOT NULL, rcf_codigo INTEGER NOT NULL, pla_kmproximo INTEGER, pla_quantidade INTEGER, tip_codigo CHAR(18) NOT NULL, PRIMARY KEY (pla_numero, rcf_codigo), FOREIGN KEY (tip_codigo) REFERENCES TIPOCUSTO, FOREIGN KEY (rcf_codigo) REFERENCES VEICULO ); CREATE TABLE ORDEM_SERVICO ( ors_numero INTEGER NOT NULL, ors_entrada DATE, ors_execucao DATE, mis_id INTEGER, ors_descricao VARCHAR(18), PRIMARY KEY (ors_numero), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE MOVIMENTACAO ( mov_cod INTEGER NOT NULL, tit_num INTEGER NOT NULL, mov_data DATE, mov_instrucao VARCHAR(18), mov_valoremissao FLOAT, mov_frequencia VARCHAR(18), mov_tipo VARCHAR(18), PRIMARY KEY (mov_cod), FOREIGN KEY (tit_num) REFERENCES TITULO ); CREATE TABLE MATERIAL_CONSUMO ( rcf_codigo INTEGER NOT NULL, mtc_quantidade INTEGER, mtc_observacao VARCHAR(18), PRIMARY KEY (rcf_codigo), FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_FISICO ); CREATE TABLE MANUTENCAO ( ctt_codigo INTEGER NOT NULL, man_grau CHAR(18), man_reparo CHAR(18), man_datafim CHAR(18), man_descricao CHAR(18), man_valor_total NUMERIC, man_km INTEGER, rcf_codigo INTEGER NOT NULL, PRIMARY KEY (ctt_codigo), FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO_FORNECEDOR, FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_PERMANETE ); CREATE TABLE FOLHA_PAGAMENTO ( rch_codigo VARCHAR(18) NOT NULL, fop_data DATE NOT NULL, fop_salario NUMERIC, fop_hora_extra NUMERIC, fop_premio NUMERIC, age_cod INTEGER NOT NULL, PRIMARY KEY (rch_codigo, fop_data), FOREIGN KEY (age_cod) REFERENCES AGENCIA, FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE EQUIPAMENTO ( rcf_codigo INTEGER NOT NULL, equ_estado_conservacao VARCHAR(18), equ_observacao VARCHAR(18), PRIMARY KEY (rcf_codigo), FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_PERMANETE ); CREATE TABLE DOCUMENTACAO ( doc_num INTEGER NOT NULL, doc_ano_vigencia INTEGER, doc_vencimento DATE, doc_pagamento VARCHAR(20), doc_tipo VARCHAR(20), rcf_codigo INTEGER NOT NULL, PRIMARY KEY (doc_num), FOREIGN KEY (rcf_codigo) REFERENCES VEICULO ); CREATE TABLE CUSTO ( ctt_codigo INTEGER NOT NULL, tip_codigo CHAR(18) NOT NULL, cto_quantidade CHAR(18), cto_valor_unit NUMERIC, PRIMARY KEY (ctt_codigo, tip_codigo), FOREIGN KEY (tip_codigo) REFERENCES TIPOCUSTO, FOREIGN KEY (ctt_codigo) REFERENCES MANUTENCAO ); CREATE TABLE COMPRA_RF ( rcf_codigo INTEGER NOT NULL, ctt_codigo INTEGER NOT NULL, rfc_preco NUMERIC, rfc_quantidade INTEGER, PRIMARY KEY (rcf_codigo, ctt_codigo), FOREIGN KEY (ctt_codigo) REFERENCES CONTRATO_FORNECEDOR, FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_FISICO ); CREATE TABLE ALOCACAO_RH ( rch_codigo VARCHAR(18) NOT NULL, ors_numero INTEGER NOT NULL, arh_tarefa VARCHAR(18), arh_desempenho VARCHAR(18), PRIMARY KEY (rch_codigo, ors_numero), FOREIGN KEY (ors_numero) REFERENCES ORDEM_SERVICO, FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE ALOCACAO_RF ( rcf_codigo INTEGER NOT NULL, ors_numero INTEGER NOT NULL, arf_quantidade INTEGER, arf_km_saida INTEGER, arf_km_chegada INTEGER, PRIMARY KEY (rcf_codigo, ors_numero), FOREIGN KEY (rcf_codigo) REFERENCES RECURSO_FISICO, FOREIGN KEY (ors_numero) REFERENCES ORDEM_SERVICO ); CREATE TABLE FASE ( fas_id INTEGER NOT NULL, fas_desc VARCHAR(50), fas_nome VARCHAR(20), fas_rodovia VARCHAR(30), fas_tempoestimado DATE, fas_tempodescanso DATE, PRIMARY KEY (fas_id) ); CREATE TABLE FASROT ( rot_id INTEGER NOT NULL, fas_id INTEGER NOT NULL, frt_sequencia INTEGER NOT NULL, PRIMARY KEY (rot_id, fas_id), FOREIGN KEY (fas_id) REFERENCES FASE, FOREIGN KEY (rot_id) REFERENCES ROTA ); CREATE TABLE FATOR ( fat_codigo INTEGER NOT NULL, fat_primario VARCHAR(18), fat_secundario VARCHAR(18), PRIMARY KEY (fat_codigo) ); CREATE TABLE TRANSPORTE ( tra_id INTEGER NOT NULL, tra_datahora DATE NOT NULL, tra_velmed INTEGER, mis_id INTEGER NOT NULL, pon_id INTEGER NOT NULL, PRIMARY KEY (tra_id), FOREIGN KEY (pon_id) REFERENCES PONTO, FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE OCORRENCIA ( tra_id INTEGER NOT NULL, oco_data DATE NOT NULL, oco_hora time NOT NULL, fat_codigo INTEGER, oco_descricao VARCHAR(18), fas_id INTEGER, PRIMARY KEY (tra_id, oco_data, oco_hora), FOREIGN KEY (fas_id) REFERENCES FASE, FOREIGN KEY (fat_codigo) REFERENCES FATOR, FOREIGN KEY (tra_id) REFERENCES TRANSPORTE ); CREATE TABLE INDENIZACAO ( ind_codigo INTEGER NOT NULL, oco_data DATE, ind_tipo CHAR(18) NOT NULL, oco_hora time, ind_data DATE NOT NULL, tra_id INTEGER, PRIMARY KEY (ind_codigo), FOREIGN KEY (tra_id, oco_data, oco_hora) REFERENCES OCORRENCIA ); CREATE TABLE PAGAMENTO ( pag_cod INTEGER NOT NULL, pag_tipo VARCHAR(18), ind_codigo INTEGER, pag_vlr FLOAT NOT NULL, pag_data CHAR(18), PRIMARY KEY (pag_cod), FOREIGN KEY (ind_codigo) REFERENCES INDENIZACAO ); CREATE TABLE MARKETING ( mar_id INTEGER NOT NULL, mar_descricao VARCHAR(18), mar_nome VARCHAR(40), PRIMARY KEY (mar_id) ); CREATE TABLE MAR_PRE ( pre_id INTEGER NOT NULL, mar_id INTEGER NOT NULL, mpr_codreferencia VARCHAR(18) NOT NULL, PRIMARY KEY (pre_id, mar_id), FOREIGN KEY (mar_id) REFERENCES MARKETING, FOREIGN KEY (pre_id) REFERENCES PREFERENCIAL ); CREATE TABLE COTACAO ( cot_id INTEGER NOT NULL, cot_produto VARCHAR(18), cot_area_volume FLOAT, cot_qtde_volume INTEGER, cot_vlr_frete FLOAT, cot_peso_unit FLOAT, cot_uf_origem CHAR(2), cot_uf_destino CHAR(2), mis_id INTEGER, PRIMARY KEY (cot_id), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE CAMPANHA ( cam_id INTEGER NOT NULL, cam_mes DATE, cam_nom VARCHAR(18), mar_id INTEGER, PRIMARY KEY (cam_id), FOREIGN KEY (mar_id) REFERENCES MARKETING ); CREATE TABLE AUDITORIA ( aud_codigo INTEGER NOT NULL, aud_danos VARCHAR(18), aud_atent VARCHAR(18), aud_atcol VARCHAR(18), aud_sin VARCHAR(18), rch_codigo VARCHAR(18), aud_sat VARCHAR(18), PRIMARY KEY (aud_codigo), FOREIGN KEY (rch_codigo) REFERENCES RH ); CREATE TABLE PRODUTO ( pro_codigo NUMERIC(5) NOT NULL, pro_nome VARCHAR(50) NOT NULL, pro_unid_med VARCHAR(50) NOT NULL, pro_tipo INTEGER, PRIMARY KEY (pro_codigo) ); CREATE TABLE CARGA ( crg_codigo INTEGER NOT NULL, crg_data DATE, crg_responsavel VARCHAR(50), rcf_codigo INTEGER, PRIMARY KEY (crg_codigo), FOREIGN KEY (rcf_codigo) REFERENCES VEICULO ); CREATE TABLE ITEM_CARGA ( itc_item NUMERIC(8) NOT NULL, crg_codigo INTEGER NOT NULL, itc_qtde NUMERIC(8,3), itc_valor_unit NUMERIC(10,2), pro_codigo NUMERIC(5), PRIMARY KEY (itc_item, crg_codigo), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (crg_codigo) REFERENCES CARGA ); CREATE TABLE DOACAO ( doa_numero NUMERIC(8) NOT NULL, doa_data DATE NOT NULL, pro_codigo NUMERIC(5) NOT NULL, doa_qtde NUMERIC(8,3) NOT NULL, doa_motivo VARCHAR(100) NOT NULL, PRIMARY KEY (doa_numero), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO ); CREATE TABLE PERDA ( per_numero NUMERIC(8) NOT NULL, per_data DATE NOT NULL, pro_codigo NUMERIC(5) NOT NULL, per_qtde NUMERIC(8,3) NOT NULL, per_motivo VARCHAR(100) NOT NULL, PRIMARY KEY (per_numero), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO ); CREATE TABLE DESCARGA ( dsc_codigo NUMERIC(8) NOT NULL, dsc_data DATE NOT NULL, dsc_responsavel VARCHAR(50) NOT NULL, rcf_codigo INTEGER, PRIMARY KEY (dsc_codigo), FOREIGN KEY (rcf_codigo) REFERENCES VEICULO ); CREATE TABLE ITEM_DESCARGA ( dsc_codigo NUMERIC(8) NOT NULL, idc_item NUMERIC(2) NOT NULL, pro_codigo NUMERIC(5) NOT NULL, idc_qtde NUMERIC(8,3) NOT NULL, idc_valor_unit NUMERIC(10,2) NOT NULL, PRIMARY KEY (dsc_codigo, idc_item), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (dsc_codigo) REFERENCES DESCARGA ); CREATE TABLE RECEBIMENTO ( rec_numero NUMERIC(6) NOT NULL, rec_data DATE NOT NULL, rec_fornecedor VARCHAR(50) NOT NULL, rec_recebedor VARCHAR(50) NOT NULL, PRIMARY KEY (rec_numero) ); CREATE TABLE ITEM_RECEBIMENTO ( rec_numero NUMERIC(6) NOT NULL, itr_item NUMERIC(2) NOT NULL, pro_codigo NUMERIC(5) NOT NULL, itr_qtde NUMERIC(8,3) NOT NULL, itr_obs VARCHAR(100), PRIMARY KEY (rec_numero, itr_item), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (rec_numero) REFERENCES RECEBIMENTO ); CREATE TABLE DEVOLUCAO ( dev_numero NUMERIC(6) NOT NULL, dev_data DATE NOT NULL, dev_devolvedor VARCHAR(50) NOT NULL, dev_recebedor VARCHAR(50) NOT NULL, PRIMARY KEY (dev_numero) ); CREATE TABLE ITEM_DEVOLUCAO ( dev_numero NUMERIC(6) NOT NULL, itd_item NUMERIC(2) NOT NULL, pro_codigo NUMERIC(5) NOT NULL, itd_qtde NUMERIC(8,3) NOT NULL, itd_obs VARCHAR(100), PRIMARY KEY (dev_numero, itd_item), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (dev_numero) REFERENCES DEVOLUCAO ); CREATE TABLE PEDIDO ( ped_cod NUMERIC(5) NOT NULL, ped_und_org VARCHAR(20) NOT NULL, ped_dt_sai DATE NOT NULL, ped_rota_merc VARCHAR(30) NOT NULL, ped_loc_vol VARCHAR(30) NOT NULL, ped_dt_lib DATE NOT NULL, rcf_codigo INTEGER, PRIMARY KEY (ped_cod), FOREIGN KEY (rcf_codigo) REFERENCES VEICULO ); CREATE TABLE ITEM_PEDIDO ( ped_cod NUMERIC(5) NOT NULL, itm_cod NUMERIC(2) NOT NULL, pro_codigo NUMERIC(5) NOT NULL, itm_qtde NUMERIC(8,3) NOT NULL, itm_und_dest VARCHAR(30) NOT NULL, itm_dt_cheg DATE, PRIMARY KEY (ped_cod, itm_cod), FOREIGN KEY (ped_cod) REFERENCES PEDIDO, FOREIGN KEY (pro_codigo) REFERENCES PRODUTO ); CREATE TABLE PALETE ( pal_codigo VARCHAR(2) NOT NULL, pal_tipo VARCHAR(30) NOT NULL, pal_comprimento_pes NUMERIC(3) NOT NULL, pal_localizacao VARCHAR(100) NOT NULL, pal_capacidade_m3 NUMERIC(4,1) NOT NULL, PRIMARY KEY (pal_codigo) ); CREATE TABLE EXPEDICAO ( exp_codigo NUMERIC(5) NOT NULL, pal_codigo VARCHAR(2) NOT NULL, exp_dt_prevista DATE NOT NULL, cli_codigo INTEGER, exp_dt_expedicao DATE NOT NULL, PRIMARY KEY (exp_codigo), FOREIGN KEY (cli_codigo) REFERENCES CLIENTE, FOREIGN KEY (pal_codigo) REFERENCES PALETE ); CREATE TABLE PRIORIDADE_DESCARGA ( pri_des_cod NUMERIC(2) NOT NULL, pri_des_grau VARCHAR(10) NOT NULL, pri_des_descricao VARCHAR(50) NOT NULL, PRIMARY KEY (pri_des_cod) ); CREATE TABLE PATIO ( pat_codigo NUMERIC(2) NOT NULL, pat_localizacao VARCHAR(20) NOT NULL, pat_quantidade NUMERIC(3) NOT NULL, PRIMARY KEY (pat_codigo) ); CREATE TABLE PORTARIA ( por_numero NUMERIC(8) NOT NULL, pat_codigo NUMERIC(2) NOT NULL, pri_des_cod NUMERIC(2) NOT NULL, por_entrada DATE NOT NULL, por_saida DATE, rcf_codigo INTEGER, PRIMARY KEY (por_numero, pat_codigo), FOREIGN KEY (rcf_codigo) REFERENCES VEICULO, FOREIGN KEY (pat_codigo) REFERENCES PATIO, FOREIGN KEY (pri_des_cod) REFERENCES PRIORIDADE_DESCARGA ); CREATE TABLE ITEM_EXPEDICAO ( exp_codigo NUMERIC(5) NOT NULL, ite_item NUMERIC(2) NOT NULL, pro_codigo NUMERIC(5) NOT NULL, ite_qtde NUMERIC(8,3) NOT NULL, PRIMARY KEY (exp_codigo, ite_item), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (exp_codigo) REFERENCES EXPEDICAO ); CREATE TABLE CARGA_VIAGEM ( car_id INTEGER NOT NULL, car_pos_veiculo INTEGER, car_datahora_embarque DATE, car_datahora_desembarque DATE, mis_id INTEGER, PRIMARY KEY (car_id), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE DEPOSITO ( dep_id INTEGER NOT NULL, dep_nome VARCHAR(20) NOT NULL, dep_desc VARCHAR(40), PRIMARY KEY (dep_id) ); CREATE TABLE LOCAL_DEPOSITO ( loc_id INTEGER NOT NULL, loc_apto INTEGER NOT NULL, dep_id INTEGER, PRIMARY KEY (loc_id), FOREIGN KEY (dep_id) REFERENCES DEPOSITO ); CREATE TABLE LOTE ( lot_id INTEGER NOT NULL, lot_volume FLOAT NOT NULL, lot_desc VARCHAR(20) NOT NULL, loc_id INTEGER, car_id INTEGER, cli_codigo INTEGER, PRIMARY KEY (lot_id), FOREIGN KEY (cli_codigo) REFERENCES CLIENTE, FOREIGN KEY (car_id) REFERENCES CARGA_VIAGEM, FOREIGN KEY (loc_id) REFERENCES LOCAL_DEPOSITO ); CREATE TABLE QTDE_PROD ( qtd_id INTEGER NOT NULL, pro_codigo NUMERIC(5), qtd_qtde_prod INTEGER NOT NULL, qtd_preco NUMERIC NOT NULL, lot_id INTEGER, PRIMARY KEY (qtd_id), FOREIGN KEY (pro_codigo) REFERENCES PRODUTO, FOREIGN KEY (lot_id) REFERENCES LOTE ); CREATE TABLE HISTORICO ( his_id INTEGER NOT NULL, his_assunto VARCHAR(30), his_mensagem VARCHAR(60) NOT NULL, his_datahora DATE NOT NULL, his_tipo INTEGER NOT NULL, mis_id INTEGER NOT NULL, fun_id INTEGER NOT NULL, PRIMARY KEY (his_id), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE CTRC ( ctr_num INTEGER NOT NULL, mis_id INTEGER NOT NULL, ctr_datahora DATE NOT NULL, ctr_status INTEGER NOT NULL, ctr_operador INTEGER NOT NULL, crt_vr_fatura INTEGER, con_dta_previsto_entrega DATE, PRIMARY KEY (ctr_num), FOREIGN KEY (mis_id) REFERENCES MISSAO ); CREATE TABLE FASPON ( pon_id INTEGER NOT NULL, fas_id INTEGER NOT NULL, rtr_sequencia INTEGER NOT NULL, PRIMARY KEY (pon_id, fas_id), FOREIGN KEY (fas_id) REFERENCES FASE, FOREIGN KEY (pon_id) REFERENCES PONTO );
1
Hosted by www.Geocities.ws

1