Ola,

Continuando sobre bootcamp da IBM para profissionais Oracle na Unisul Ponte do Imaruim quero falar agora sobre Desenvolvimento. Lembrando que todos os meus comentários são em cima da apresentação, sendo assim, nada foi testado.

O IBM DB2 versão 9.7 já possui um compilador próprio para PL/SQL, sendo assim não precisa ficar ‘executando um de – para’ em toda a análise, já faz a compilação e grava da forma como o interpretador precisa. Para o TSQL (SQL Server e Sybase) que é bem parecido com SQL PL do DB2 existe esse de – para, passando pelo mesmo compilador gravando da forma que o interpretador precisa.

O interpretador nesse caso será o mesmo para as duas saídas, a figura abaixo mostra isso:

Para que esse interpretador funcione, essa opção precisa ser configurada DB2_COMPATIBILITY_VECTOR, abaixo quais as features que podem ser habilitadas, as com * precisam fazer o procedimento de parar e iniciar a instância. Para habilitar todas de uma vez utilizar palavra ORA:

Criando um database com todas as features habilitadas:

Obs.: O database tem que ser criado depois que é habilitada a compatibilidade ou não serão utilizadas, pois ficará um database nativo DB2.

Alguns tipos de dados e onde eram os maiores problemas nas migrações em versões anteriores, que agora podem não ser tão problemáticas:

Uma outra coisa que achei interessante (ou não, a prática daria essa resposta) é que pode ‘misturar’ o PL/SQL, TSQL e SQL PL no desenvolvimento dos mesmos objetos (function or procedures), poderia rolar pegar o que cada uma tem de melhor e fazer acontecer, agora, isso como mencionei somente o desenvolvimento do dia a dia daria a resposta, mas seria interessante avaliar.

Itens que no PL/SQL estão funcionais são alguns que utilizo diariamente e acabei listando abaixo sem ter certeza como era/é no DB2 (precisaria testar tudo para dar um veredito final e ai sim ter certeza):
– Os cursores, para retornos em procedures;
– Utilização normal de de Packages.Procedures e Packages.Funcitions;
– Os privilegios para outras roles (usuários) executar, normal;
– Utilização do %type para tabela.campo e %rowtype para tabela na declaração de variáveis;

E segundo o expertise do instrutor, hoje o compilador do DB2 está 90% a 95% igual do Oracle, portanto, muita coisa está funcional.

Obs.: Imagens retiradas do material oficial do curso dado pela equipe IBM DB2 Brasil.

Ver part1 deste post!

Nota: Quero ver ser faço um post em breve sobre alguns testes de PL/SQL direto no DB2, aguardem!

Att,
capin