Configurações do projeto (conversão) (DB2ToSQL)

A página Conversão da caixa de diálogo Configurações do projeto contém configurações que personalizam como o SSMA converte a sintaxe do DB2 em sintaxe do SQL Server.

O painel da Conversão está disponível nas caixas de diálogo Configurações do Projeto e Configurações Padrão do Projeto:

  • Para especificar configurações para todos os projetos SSMA, no menu Ferramentas, clique em Configurações Padrão do Projeto, selecione o tipo de projeto de migração cujas configurações precisam ser exibidas ou alteradas na lista suspensa Versão de Destino da Migração, depois clique em Geral na parte inferior do painel esquerdo e clique em Conversão.

  • Para especificar configurações para o projeto atual no menu Ferramentas, clique em Configurações do projeto, em seguida clique em Geral na parte inferior do painel esquerdo e, em seguida, clique em Conversão.

Mensagens de conversão

Gerar mensagens sobre problemas aplicados

Especifica se o SSMA gera mensagens informativas durante a conversão, exibe-as no painel Saída e adiciona-as ao código convertido.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: não

Modo completo: Não

Opções diversas

Transmissão de expressões ROWNUM como números inteiros

Quando o SSMA converte expressões ROWNUM, converte a expressão em uma cláusula TOP, seguida pela expressão. O exemplo a seguir mostra ROWNUM em uma Instrução DELETE do DB2:

DELETE FROM Table1

WHERE ROWNUM < expression and Field1 >= 2

O exemplo a seguir mostra o Transact-SQL resultante:

DELETE TOP (expression-1)

FROM Table1

WHERE Field1>=2

TOP requer que a expressão das cláusulas TOP seja avaliada como um número inteiro. Se o número inteiro for negativo, a instrução produzirá um erro.

  • Se você selecionar Sim, o SSMA converterá a expressão como um número inteiro.

  • Se você selecionar Não, o SSMA marcará todas as expressões de números não inteiros como um erro no código convertido.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Completo: não

Modo Otimista: sim

Mapeamento de esquema padrão

Essa configuração especifica como os esquemas do DB2 são mapeados para esquemas do SQL Server. Duas opções estão disponíveis nessa configuração:

  1. Esquema para banco de dados: nesse modo, o esquema do DB2 'sch1' será mapeado por padrão para o esquema 'dbo' do SQL Server no banco de dados SQL Server 'sch1'.

  2. Esquema para esquema: nesse modo, o esquema do DB2 'sch1' será mapeado por padrão para o esquema 'sch1' do SQL Server no banco de dados padrão do SQL Server fornecido na caixa de diálogo de conexão.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: esquema para banco de dados

Formas de conversão da instrução MERGE

  • Se você selecionar Usar a instrução INSERT, UPDATE, DELETE, o SSMA converterá a instrução MERGER em instruções INSERT, UPDATE, DELETE.

  • Se você selecionar Usar a instrução MERGE, o SSMA converterá a instrução MERGER em uma instrução MERGE no SQL Server.

Aviso

Essa opção de configuração de projeto está disponível somente no SQL Server 2008, no SQL Server 2012 e no SQL Server 2014.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo padrão/otimista/completo: usando a instrução MERGE

Converter chamadas em subprogramas que usam argumentos padrão

As funções do SQL Server não oferecem suporte à omissão de parâmetros na chamada de função. Além disso, as funções e os procedimentos do SQL Server não oferecem suporte a expressões como valores de parâmetro padrão.

  • Se você selecionar Sim e uma chamada de função omitir parâmetros, o SSMA inserirá a palavra-chave padrão na função e chamada na posição correta. Em seguida, ele marcará a chamada com um aviso.

  • Se você selecionar Não, o SSMA marcará as chamadas de função como erros.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter a função COUNT em COUNT_BIG

Se for provável que suas funções COUNT retornem valores maiores que 2.147.483.647, que é 231-1, você deverá converter as funções em COUNT_BIG.

  • Se você selecionar Sim, o SSMA converterá todos os usos de COUNT em COUNT_BIG.

  • Se você selecionar Não, as funções permanecerão como COUNT. O SQL Server retornará um erro se a função retornar um valor maior que 231-1.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Completo: sim

Modo otimista: Não

Converter instrução FORALL para a instrução WHILE

Define como o SSMA tratará loops FORALL em elementos de coleção PL/SQL.

  • Se você selecionar Sim, o SSMA criará um loop WHILE em que os elementos da coleção serão recuperados um por um.

  • Se você selecionar Não, o SSMA gerará um conjunto de linhas da coleção usando o método nodes( ) e o usará como uma tabela única. Isso é mais eficiente, mas torna o código de saída menos legível.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: não

Modo completo: sim

Converter chaves estrangeiras com a ação referencial SET NULL na coluna que é NOT NULL

O DB2 permite a criação de restrições de chave estrangeira, em que uma ação SET NULL não poderia ser executada, pois NULLs não são permitidos na coluna referenciada. O SQL Server não permite essa configuração de chave estrangeira.

  • Se você selecionar Sim, o SSMA gerará ações referenciais como no DB2, mas será necessário fazer alterações manuais antes de carregar a restrição no SQL Server. Por exemplo, você pode escolher NO ACTION em vez de SET NULL.

  • Se você selecionar Não, a restrição será marcada como um erro.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: não

Converter chamadas de função em chamadas de procedimento

Algumas funções do DB2 são definidas como transações autônomas ou contêm instruções que não seriam válidas no SQL Server. Nesses casos, o SSMA cria um procedimento e uma função que são um wrapper para o procedimento. A função convertida chama o procedimento de implementação.

O SSMA pode converter chamadas para a função wrapper em chamadas para o procedimento. Isso cria um código mais legível e pode melhorar o desempenho. Contudo, o contexto nem sempre permite isso; por exemplo, você não pode substituir uma chamada de função na lista SELECT por uma chamada de procedimento. O SSMA tem algumas opções para abranger os casos comuns:

  • Se você selecionar Sempre, o SSMA tentará converter chamadas de função wrapper em chamadas de procedimento. Se o contexto atual não permitir essa conversão, será produzida uma mensagem de erro. Dessa forma, nenhuma chamada de função é deixada no código gerado.

  • Se você selecionar Quando possível, o SSMA fará uma movimentação para chamadas de procedimento somente se a função tiver parâmetros de saída. Quando a movimentação não é possível, o atributo de saída do parâmetro é removido. Em todos os outros casos, o SSMA deixa chamadas de função.

  • Se você selecionar Nunca, o SSMA deixará todas as chamadas de função como chamadas de função. Às vezes, essa escolha pode ser inaceitável por razões de desempenho.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: quando possível

Converter instruções LOCK TABLE

O SSMA pode converter muitas instruções LOCK TABLE em dicas de tabela. O SSMA não pode converter nenhuma instrução LOCK TABLE que contenha cláusulas PARTITION, SUBPARTITION, @dblink e NOWAIT e marcará essas instruções com mensagens de erro de conversão.

  • Se você selecionar Sim, o SSMA converterá instruções LOCK TABLE compatíveis em dicas de tabela.

  • Se você selecionar Não, o SSMA marcará todas as instruções LOCK TABLE com mensagens de erro de conversão.

A tabela a seguir mostra como o SSMA converte os modos de bloqueio do DB2:

Modo de bloqueio do DB2 Dica de tabela do SQL Server
ROW SHARE ROWLOCK, HOLDLOCK
ROW EXCLUSIVE ROWLOCK, XLOCK, HOLDLOCK
SHARE UPDATE = ROW SHARE ROWLOCK, HOLDLOCK
SHARE TABLOCK, HOLDLOCK
SHARE ROW EXCLUSIVE TABLOCK, XLOCK, HOLDLOCK
EXCLUSIVE TABLOCKX, HOLDLOCK

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter instruções OPEN-FOR para parâmetros REF CURSOR OUT

No DB2, a instrução OPEN-FOR pode ser usada para retornar um conjunto de resultados para o parâmetro OUT de um subprograma do tipo REF CURSOR. No SQL Server, os procedimentos armazenados retornam diretamente os resultados das instruções SELECT.

O SSMA pode converter muitas instruções OPEN-FOR em instruções SELECT.

  • Se você selecionar Sim, o SSMA converterá a instrução OPEN-FOR em uma instrução SELECT, que retornará o conjunto de resultados para o cliente.

  • Se você selecionar Não, o SSMA gerará uma mensagem de erro no código convertido e no painel Saída.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter registro como uma lista de variáveis separadas

O SSMA pode converter registros DB2 em variáveis separadas e em variáveis XML com estrutura específica.

  • Se você selecionar Sim, o SSMA converterá o registro em uma lista de variáveis separadas quando possível.

  • Se você selecionar Não, o SSMA converterá o registro em variáveis XML com estrutura específica.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter chamadas de função SUBSTR em chamadas de função SUBSTRING

O SSMA pode converter Chamadas de função SUBSTR do DB2 em chamadas de função substring do SQL Server, dependendo do número de parâmetros. Se o SSMA não puder converter uma chamada de função SUBSTR ou se o número de parâmetros não tiver suporte, o SSMA converterá a chamada de função SUBSTR em uma chamada de função SSMA personalizada.

  • Se você selecionar Sim, o SSMA converterá chamadas de função SUBSTR que usam três parâmetros em substring do SQL Server. Outras funções SUBSTR serão convertidas para chamar a função SSMA personalizada.

  • Se você selecionar Não, o SSMA converterá a chamada de função SUBSTR em uma chamada de função SSMA personalizada.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo padrão/otimista: sim

Modo completo: Não

Converter subtipos

O SSMA pode converter subtipos PL/SQL de duas maneiras:

  • Se você selecionar Sim, o SSMA criará o tipo definido pelo usuário do SQL Server a partir de um subtipo e o usará para cada variável desse subtipo.

  • Se você selecionar Não, o SSMA substituirá todas as declarações de origem do subtipo pelo tipo subjacente e converterá o resultado como de costume. Nesse caso, nenhum tipo adicional é criado no SQL Server

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: não

Converter sinônimos

Os sinônimos dos seguintes objetos do DB2 podem ser migrados para o SQL Server:

  • Tabelas e tabelas de objeto

  • Exibições e exibições de objeto

  • Funções e procedimentos armazenados

  • Exibições materializadas

Os sinônimos dos seguintes objetos do DB2 podem ser substituídos por referências diretas aos objetos:

  • Sequências

  • Pacotes

  • Objetos de esquema de classe Java

  • Tipos de objeto definidos pelo usuário

Outros sinônimos não podem ser migrados. O SSMA gerará mensagens de erro para o sinônimo e todas as referências que usam o sinônimo.

  • Se você selecionar Sim, o SSMA criará sinônimos do SQL Server e referências de objeto diretas de acordo com as listas anteriores.

  • Se você selecionar Não, o SSMA criará referências diretas de objeto para todos os sinônimos listados aqui.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter TO_CHAR(date, format)

O SSMA pode converter DB2 TO_CHAR(date, format) em procedimentos do banco de dados sysdb.

  • Se você selecionar Usar a função TO_CHAR_DATE, o SSMA converterá TO_CHAR(date, format) na função TO_CHAR_DATE usando o idioma inglês para conversão.

  • Se você selecionar Usar a função TO_CHAR_DATE_LS (NLS care), o SSMA converterá TO_CHAR(date, format) na função TO_CHAR_DATE_LS usando a linguagem de sessão para conversão

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: usando a função TO_CHAR_DATE

Modo completo: usando a função TO_CHAR_DATE_LS (NLS care)

Converter instruções de processamento de transações

O SSMA pode converter instruções de processamento de transações do DB2:

  • Se você selecionar Sim, o SSMA converterá instruções de processamento de transações do DB2 em instruções do SQL Server.

  • Se você selecionar Não, o SSMA marcará as instruções de processamento de transações como erros de conversão.

Observação

O DB2 abre transações implicitamente. Para emular esse comportamento no SQL Server, você deve adicionar instruções BEGIN TRANSACTION manualmente em que deseja que suas transações sejam iniciadas. Como alternativa, você pode executar o comando SET IMPLICIT_TRANSACTIONS ON no início da sessão. O SSMA adiciona SET IMPLICIT_TRANSACTIONS ON automaticamente ao converter subrotinas com transações autônomas.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Emular comportamento nulo do DB2 em cláusulas ORDER BY

Os valores NULL são ordenados de maneira diferente no SQL Server e no DB2:

  • No SQL Server, os valores NULL são os valores mais baixos em uma lista ordenada. Em uma lista crescente, os valores NULL serão exibidos primeiro.

  • No DB2, os valores NULL são os valores mais altos em uma lista ordenada. Por padrão, os valores NULL são mostrados por último em uma lista em ordem crescente.

  • O DB2 tem cláusulas NULLS FIRST e NULLS LAST, o que permite alterar como o DB2 ordena NULLs.

O SSMA pode emular o comportamento de ORDER BY do DB2 verificando se há valores NULL. Em seguida, primeiro ele ordena por valores NULL na ordem especificada e, depois, ordena por outros valores.

  • Se você selecionar Sim, o SSMA converterá a instrução do DB2 de maneira que emule o comportamento ORDER BY do DB2.

  • Se você selecionar Não, o SSMA ignorará as regras do DB2 e gerará uma mensagem de erro quando encontrar as cláusulas NULLS FIRST e NULLS LAST.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: não

Modo completo: sim

Emular exceções de contagem de linhas em SELECT

Se uma instrução SELECT com uma cláusula INTO não retornar nenhuma linha, o DB2 gerará uma exceção NO_DATA_FOUND. Se a instrução retornar duas ou mais linhas, a exceção TOO_MANY_ROWS será gerada. A instrução convertida no SQL Server não gerará nenhuma exceção se a contagem de linhas for diferente de um.

  • Se você selecionar Sim, o SSMA adicionará chamada ao procedimento sysdb db_error_exact_one_row_check após cada instrução SELECT. Esse procedimento emula as exceções NO_DATA_FOUND e TOO_MANY_ROWS. Esse é o padrão e permite reproduzir o comportamento do DB2 o mais próximo possível. Você sempre deve escolher Sim se o código-fonte tiver manipuladores de exceção que processam esses erros. Observe que, se a instrução SELECT ocorrer em uma função definida pelo usuário, esse módulo será convertido em um procedimento armazenado, pois a execução de procedimentos armazenados e a geração de exceções não são compatíveis com o contexto de função do SQL Server.

  • Se você selecionar Não, nenhuma exceção será gerada. Isso pode ser útil quando o SSMA converte uma função definida pelo usuário e você deseja que ela permaneça uma função no SQL Server

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Gerar erro para DBMS_SQL.PARSE

  • Se você selecionar Erro, o SSMA gerará um erro na conversão de DBMS_SQL.PARSE.

  • Se você selecionar Aviso, o SSMA gerará um aviso na conversão de DBMS_SQL.PARSE.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: erro

Gerar coluna ROWID

Quando o SSMA cria tabelas no SQL Server, ele pode criar uma coluna ROWID. Quando os dados são migrados, cada linha obtém um novo valor UNIQUEIDENTIFIER gerado pela função newid().

  • Se você selecionar Sim, a coluna ROWID será criada em todas as tabelas, e o SQL Server gerará GUIDs conforme você inserir valores. Sempre escolha Sim se estiver planejando usar o Testador SSMA.

  • Se você selecionar Não, as colunas ROWID não serão adicionadas às tabelas.

  • Adicionar coluna ROWID para tabelas com gatilhos adicionar ROWID para tabelas que contêm gatilhos.

Aviso

A configuração padrão no caso do SQL Server 2005, do SQL Server 2008 e do SQL Server 2012 e 2014 é Adicionar coluna ROWID para tabelas com gatilhos.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: adicionar coluna ROWID para tabelas com gatilhos

Modo completo: sim

Gerar índice exclusivo na coluna ROWID

Especifica se o SSMA gera ou não uma coluna de índice exclusiva na coluna gerada por ROWID. Se a opção estiver definida como "SIM", o índice exclusivo será gerado, e se estiver definido como "NÃO", o índice exclusivo não será gerado na coluna ROWID.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Conversão de módulos locais

Define o tipo de conversão de subprograma aninhado do DB2 (declarado em função ou procedimento armazenado autônomo).

  • Se você selecionar Inline, as chamadas de subprograma aninhado serão substituídas por seu corpo.

  • Se você selecionar Procedimentos armazenados, o subprograma aninhado será convertido em um procedimento armazenado do SQL Server e suas chamadas serão substituídas nessa chamada de procedimento.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: Inline

Usar ISNULL na concatenação de cadeia de caracteres

O DB2 e o o SQL Server retornam resultados diferentes quando as concatenações de cadeias de caracteres incluem valores NULL. O DB2 trata o valor NULL como um conjunto de caracteres vazio. SQL Server retorna NULL.

  • Se você selecionar Sim, o SSMA substituirá o caractere de concatenação do DB2 (||) pelo caractere de concatenação do SQL Server (+). O SSMA também verifica as expressões em ambos os lados da concatenação em pesquisa de valores NULL.

  • Se você selecionar Não, o SSMA substituirá os caracteres de concatenação, mas não verificará se há valores NULL.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Usar chamadas de função ISNULL em REPLACE

A instrução ISNULL é usada em chamadas de função REPLACE para emular o comportamento do DB2. As opções a seguir estão presentes para essa configuração:

  • SIM

  • Não

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: não

Modo completo: sim

Usar chamadas de função ISNULL em CONCAT

A instrução ISNULL é usada em chamadas de função CONCAT para emular o comportamento do DB2. As opções a seguir estão presentes para essa configuração:

  • SIM

  • Não

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista: não

Modo completo: sim

Use a função de conversão nativa quando possível

  • Se você selecionar Sim, o SSMA converterá TO_CHAR(date, format) em uma função de conversão nativa quando possível.

  • Se você selecionar Não, o SSMA converterá TO_CHAR(date, format) em TO_CHAR_DATE ou TO_CHAR_DATE_LS (é definido pelas opções "Converter TO_CHAR(date, format)").

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo padrão/otimista: sim

Modo completo: Não

Use SELECT... FOR XML ao converter SELECT... INTO para variável de registro

Especifica se um conjunto de resultados XML deve ser gerado quando você seleciona uma variável de registro.

  • Se você selecionar Sim, a instrução SELECT retornará o XML.

  • Se você selecionar Não, a instrução SELECT retornará um conjunto de resultados.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: não

Conversão da cláusula RETURNING

Converter a cláusula RETURNING na instrução DELETE em OUTPUT

O DB2 fornece uma cláusula RETURNING como forma de obter imediatamente valores excluídos. O SQL Server fornece essa funcionalidade com a cláusula OUTPUT.

  • Se você selecionar Sim, o SSMA converterá cláusulas RETURNING em instruções DELETE em cláusulas OUTPUT. Como os gatilhos em uma tabela podem alterar valores, o valor retornado pode ser diferente no SQL Server e no DB2.

  • Se você selecionar Não, o SSMA gerará uma instrução SELECT antes das instruções DELETE para recuperar os valores retornados.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter a cláusula RETURN na instrução INSERT em OUTPUT

O DB2 fornece uma cláusula RETURNING como forma de obter imediatamente os valores inseridos. O SQL Server fornece essa funcionalidade com a cláusula OUTPUT.

  • Se você selecionar Sim, o SSMA converterá uma cláusula RETURNING em uma instrução INSERT em OUTPUT. Como os gatilhos em uma tabela podem alterar valores, o valor retornado pode ser diferente no SQL Server e no DB2.

  • Se você selecionar Não, o SSMA emulará a funcionalidade do DB2 inserindo e selecionando valores de uma tabela de referência.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Converter a cláusula RETURNING na instrução UPDATE para OUTPUT

O DB2 fornece uma cláusula RETURNING como forma de obter valores atualizados imediatamente. O SQL Server fornece essa funcionalidade com a cláusula OUTPUT.

  • Se você selecionar Sim, o SSMA converterá cláusulas RETURNING em instruções UPDATE em cláusulas OUTPUT. Como os gatilhos em uma tabela podem alterar valores, o valor retornado pode ser diferente no SQL Server e no DB2.

  • Se você selecionar Não, o SSMA gerará instruções SELECT após instruções UPDATE para recuperar valores retornados.

Quando você seleciona um modo de conversão na caixa Modo, o SSMA aplica a seguinte configuração:

Modo Padrão/Otimista/Completo: sim

Conversão de sequência

Converter gerador de sequência

No DB2, você pode usar uma Sequência para gerar identificadores exclusivos.

O SSMA pode converter sequências para o seguinte.

  • Usando o gerador de sequência do SQL Server (essa opção só está disponível na conversão para SQL Server 2012 e SQL Server 2014).

  • Usando o gerador de sequência do SSMA.

  • Usando a identidade da coluna.

A opção padrão ao converter para SQL Server 2012 ou SQL Server 2014 é usar o gerador de sequência do SQL Server. No entanto, o SQL Server 2012 e o SQL Server 2014 não dão suporte à obtenção do valor de sequência atual (como o do método currval de sequência do DB2). Consulte o blog da equipe do SSMA para obter diretrizes sobre a migração do método currval de sequência do DB2.

O SSMA também oferece uma opção para converter a sequência do DB2 em emulador de sequência do SSMA. Essa é a opção padrão quando você converte para SQL Server antes de 2012

Por fim, você também pode converter a sequência atribuída a uma coluna na tabela para valores de identidade do SQL Server. Você deve especificar o mapeamento entre as sequências para uma coluna de identidade na guia Tabela do DB2

Converter gatilhos externos do CURRVAL

Visível somente quando Converter o gerador de sequência está definido como usando a identidade da coluna. Como as Sequências do DB2 são objetos separados das tabelas, muitas tabelas que usam Sequências usam um gatilho para gerar e inserir um novo valor de sequência. O SSMA comenta essas instruções ou as marca como erros quando o comentário gera erros.

  • Se você selecionar Sim, o SSMA marcará todas as referências a gatilhos externos na sequência convertida CURRVAL com um aviso.

  • Se você selecionar Não, o SSMA marcará todas as referências a gatilhos externos na sequência convertida CURRVAL com um erro.

Confira também

Referência da interface do usuário (DB2ToSQL)