- Anderson Graf
Checksum de fontes PL/SQL
Assim como temos em ambientes Linux o cksum e o sha1sum que nos permitem gerar um código hash para a comparação de consistência de um arquivo, umas das opções no Oracle Database é a função GET_HASH_VALUE disponível no pacote DBMS_UTILITY que permite gerar um código hash do fonte sendo muito útil para identificar se ele está consistente ou se houve alguma alteração, principalmente quando comparamos extensos códigos PL/SQL que visivelmente daria trabalho para determinar se estão iguais entre uma base de dados e outra, por exemplo.
Criando uma procedure de exemplo e obtendo o hash:
Agora recriando a procedure incluindo apenas um espaço entre o null e o ; (ponto e virgula)
Com a inserção de apenas um espaço já podemos constatar que o hash dela já não é igual ao hash do PL/SQL anterior indicando assim que o fonte é diferente.
Recriando a procedure da forma que era originalmente iremos voltar a ter o mesmo hash 1742638361
Outro método para se obter o hash de um PL/SQL é através do pacote DBMS_CRYPTO
Espero que a dica possa ser útil para você também.