From 4987519d99d141dfede983fb563b74ac6faa6b8e Mon Sep 17 00:00:00 2001 From: Marcelo Linhares Date: Tue, 3 Jul 2018 12:36:25 -0300 Subject: [PATCH] Forcando nomes menores q 30 para oracle --- bd/PenMetaBD.php | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 51 insertions(+), 5 deletions(-) diff --git a/bd/PenMetaBD.php b/bd/PenMetaBD.php index d25e517..afc2eb0 100644 --- a/bd/PenMetaBD.php +++ b/bd/PenMetaBD.php @@ -331,8 +331,42 @@ class PenMetaBD extends InfraMetaBD { if(count($arrSchema['pk']) > 1) { foreach($arrSchema['pk'] as $strPk) { - - $objInfraBanco->executarSql('CREATE INDEX idx_'.$strNomeTabela.'_'.$strPk.' ON '.$strNomeTabela.'('.$strPk.')'); + $n = 'idx_'.$strNomeTabela.'_'.$strPk; + $n = substr($n, 0, 30); + if($n=='idx_md_pen_recibo_tramite_envi' && $strNomeTabela=='md_pen_recibo_tramite_enviado' && $strPk=='numero_registro'){ + $n="idx_md_pen_recibo_tramite_env2"; + } + if($n=='idx_md_pen_recibo_tramite_rece' && $strNomeTabela=='md_pen_recibo_tramite_recebido' && $strPk=='numero_registro'){ + $n="idx_md_pen_recibo_tramite_rec2"; + } + if($n=='idx_md_pen_recibo_tramite_rece' && $strNomeTabela=='md_pen_recibo_tramite_recebido' && $strPk=='hash_assinatura'){ + $n="idx_md_pen_recibo_tramite_rec3"; + } + if($n=='idx_md_pen_rel_processo_apensa' && $strNomeTabela=='md_pen_rel_processo_apensado' && $strPk=='id_procedimento_apensado'){ + $n="idx_md_pen_rel_processo_apens2"; + } + if($n=='idx_md_pen_rel_tarefa_operacao' && $strNomeTabela=='md_pen_rel_tarefa_operacao' && $strPk=='codigo_operacao'){ + $n="idx_md_pen_rel_tarefa_operaca2"; + } + if($n=='idx_md_pen_componente_digital_' && $strNomeTabela=='md_pen_componente_digital' && $strPk=='id_procedimento'){ + $n="idx_md_pen_componente_digital2"; + } + if($n=='idx_md_pen_componente_digital_' && $strNomeTabela=='md_pen_componente_digital' && $strPk=='id_documento'){ + $n="idx_md_pen_componente_digital3"; + } + if($n=='idx_md_pen_componente_digital_' && $strNomeTabela=='md_pen_componente_digital' && $strPk=='id_tramite'){ + $n="idx_md_pen_componente_digital4"; + } + //CREATE INDEX idx_md_pen_componente_digital_ ON md_pen_componente_digital(id_tramite) + //CREATE INDEX idx_md_pen_componente_digital_ ON md_pen_componente_digital(id_documento) + //CREATE INDEX idx_md_pen_componente_digital_ ON md_pen_componente_digital(id_procedimento) + //CREATE INDEX idx_md_pen_rel_tarefa_operacao ON md_pen_rel_tarefa_operacao(codigo_operacao) + //CREATE INDEX idx_md_pen_rel_processo_apensa ON md_pen_rel_processo_apensado(id_procedimento_apensado) + //CREATE INDEX idx_md_pen_recibo_tramite_rece ON md_pen_recibo_tramite_recebido(hash_assinatura) + //CREATE INDEX idx_md_pen_recibo_tramite_rece ON md_pen_recibo_tramite_recebido(numero_registro) + //idx_md_pen_recibo_tramite_env2 ON md_pen_recibo_tramite_enviado(numero_registro) + //idx_md_pen_recibo_tramite_envi ON md_pen_recibo_tramite_enviado(id_tramite) + $objInfraBanco->executarSql('CREATE INDEX '.$n.' ON '.$strNomeTabela.'('.$strPk.')'); } } } @@ -381,7 +415,19 @@ class PenMetaBD extends InfraMetaBD { } public function adicionarChaveEstrangeira($strNomeFK, $strTabela, $arrCampos, $strTabelaOrigem, $arrCamposOrigem) { - + $strNomeFK = substr($strNomeFK, 0, 30); + if($strNomeFK=='fk_md_pen_componente_digital_m' && $strTabela=='md_pen_componente_digital' && $strTabelaOrigem=='md_pen_tram' && $arrCampos[0]=='numero_registro'){ + $strNomeFK='fk_md_pen_componente_digital_2'; + } + if($strNomeFK=='fk_md_pen_rel_doc_map_enviado_' && $strTabela=='md_pen_rel_doc_map_enviado' && $strTabelaOrigem=='md_pen_especie_documental' && $arrCampos[0]=='codigo_especie'){ + $strNomeFK='fk_md_pen_rel_doc_map_enviado2'; + } + if($strNomeFK=='fk_md_pen_rel_doc_map_recebido' && $strTabela=='md_pen_rel_doc_map_recebido' && $strTabelaOrigem=='md_pen_especie_documental' && $arrCampos[0]=='codigo_especie'){ + $strNomeFK='fk_md_pen_rel_doc_map_recebid2'; + } + //alter table md_pen_rel_doc_map_recebido add constraint fk_md_pen_rel_doc_map_recebido foreign key (codigo_especie) references md_pen_especie_documental (id_especie) + //alter table md_pen_rel_doc_map_enviado add constraint fk_md_pen_rel_doc_map_enviado_ foreign key (codigo_especie) references md_pen_especie_documental (id_especie) + //alter table md_pen_componente_digital add constraint fk_md_pen_componente_digital_m foreign key (numero_registro,id_tramite) references md_pen_tram (numero_registro,id_tramite) if(!$this->isChaveExiste($strTabela, $strNomeFK)) { parent::adicionarChaveEstrangeira($strNomeFK, $strTabela, $arrCampos, $strTabelaOrigem, $arrCamposOrigem); } @@ -389,7 +435,7 @@ class PenMetaBD extends InfraMetaBD { } public function adicionarChavePrimaria($strTabela, $strNomePK, $arrCampos) { - + $strNomePK = substr($strNomePK, 0, 30); if(!$this->isChaveExiste($strTabela, $strNomePK)) { parent::adicionarChavePrimaria($strTabela, $strNomePK, $arrCampos); } @@ -414,4 +460,4 @@ class PenMetaBD extends InfraMetaBD { } return $this; } -} \ No newline at end of file +} -- libgit2 0.21.2