Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A Microsoft fornece um conjunto robusto de comandos de arquivo de script para executar e controlar atividades do Assistente de Migração do SQL Server (SSMA). As secções seguintes detalham o mesmo.
Comandos de arquivo de script
O aplicativo de console usa determinados comandos de arquivo de script padrão, conforme enumerado nesta seção.
Comandos do projeto
Os comandos Project lidam com a criação de projetos, abertura, salvamento e saída de projetos.
create-new-project comando
Este comando cria um novo projeto SSMA.
project-folderindica a pasta do projeto que está sendo criado.project-nameindica o nome do projeto. {string}overwrite-if-existsO atributo opcional indica se um projeto existente deve ser substituído. {Booleano}project-type: Atributo opcional. Indica o tipo de projeto, ou seja,sql-server-2016, ,sql-server-2017,sql-server-2019,sql-server-2022,sql-server-2025, ousql-azure. A predefinição ésql-server-2016.
Exemplo de sintaxe
<create-new-project
project-folder="<project-folder>"
project-name="<project-name>"
overwrite-if-exists="<true/false>" (optional)
project-type=="<sql-server-2016 | sql-server-2017 | sql-server-2019 | sql-server-2022 | sql-server-2025 | sql-azure>"
/>
O atributo overwrite-if-exists é false por defeito.
O atributo project-type é sql-server-2016 por defeito.
open-project comando
Este comando abre o projeto.
project-folderindica a pasta do projeto que está sendo criado. O comando falhará se a pasta especificada não existir. {string}project-nameindica o nome do projeto. O comando falhará se o projeto especificado não existir. {string}
Exemplo de sintaxe
<open-project
project-folder="<project-folder>"
project-name="<project-name>"
/>
Observação
O SSMA for SAP ASE Console Application suporta compatibilidade com versões anteriores. Você pode usá-lo para abrir projetos criados pela versão anterior do SSMA.
save-project comando
Este comando salva o projeto de migração.
Exemplo de sintaxe
<save-project/>
close-project comando
Este comando fecha o projeto de migração.
Exemplo de sintaxe
<close-project
if-modified="<save/error/ignore>" (optional)
/>
O atributo if-modified é opcional, ignore por padrão.
Comandos de conexão de banco de dados
Os comandos Conexão de Banco de Dados ajudam a se conectar ao banco de dados.
O recurso Procurar da interface não é suportado no console.
Para obter mais informações, consulte Criando arquivos de script.
connect-source-database comando
Esse comando executa a conexão com o banco de dados de origem e carrega metadados de alto nível do banco de dados de origem, mas não todos os metadados.
Se a conexão com a fonte não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução.
A definição do servidor é recuperada a partir do atributo de nome definido para cada ligação na secção do servidor do ficheiro de conexão do servidor ou do ficheiro de script.
Exemplo de sintaxe
<connect-source-database server="<server-unique-name>"/>
force-load-source/target-database comando
Este comando carrega os metadados de origem e é útil para trabalhar no projeto de migração offline.
Se a conexão com a origem/destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Este comando requer um ou vários nós da metabase como parâmetro de linha de comando.
Exemplo de sintaxe
<force-load metabase="<source/target>" >
<metabase-object object-name="<object-name>"/>
</force-load>
reconnect-source-database comando
Esse comando se reconecta ao banco de dados de origem, mas não carrega nenhum metadados, ao contrário do comando connect-source-database.
Se a (re)conexão com a origem não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Exemplo de sintaxe
<reconnect-source-database server="<server-unique-name>"/>
connect-target-database comando
Esse comando se conecta ao banco de dados SQL Server de destino e carrega metadados de alto nível do banco de dados de destino, mas não totalmente os metadados.
Se a conexão com o destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução.
A definição do servidor é recuperada do atributo nome definido para cada conexão, na secção de servidor do arquivo de conexão do servidor ou do arquivo de script.
Exemplo de sintaxe
<connect-target-database server="<server-unique-name>"/>
reconnect-target-database comando
Esse comando se reconecta ao banco de dados de destino, mas não carrega nenhum metadados, ao contrário do comando connect-target-database.
Se a (re)conexão com o destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Exemplo de sintaxe
<reconnect-target-database server="<server-unique-name>"/>
Comandos de relatório
Os comandos Report geram relatórios sobre o desempenho de várias atividades do Console SSMA.
generate-assessment-report comando
Este comando gera relatórios de avaliação na base de dados de origem.
Se a conexão do banco de dados de origem não for executada antes de executar esse comando, um erro será gerado e o aplicativo de console será encerrado.
A falha ao se conectar ao servidor de banco de dados de origem durante a execução do comando também resulta no encerramento do aplicativo de console.
conversion-report-folder: Especifica a pasta na qual o relatório de avaliação pode ser armazenado. (atributo opcional)object-name: Especifica os objetos considerados para a geração de relatórios de avaliação (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto chamado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").conversion-report-overwrite: Especifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-summary-report-to: Especifica o caminho no qual o relatório é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
AssessmentReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
report-errors(="true/false", com padrão como "false" (atributos opcionais))verbose(="true/false", com padrão como "false" (atributos opcionais))
Exemplo de sintaxe
<generate-assessment-report
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
assessment-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Ou:
<generate-assessment-report
assessment-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
>
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</generate-assessment-report>
Comandos de migração
Os comandos Migration convertem o esquema do banco de dados de destino no esquema de origem e migram dados para o servidor de destino.
convert-schema comando
Este comando executa a conversão de esquema do esquema de origem para o esquema de destino.
Se a conexão do banco de dados de origem ou de destino não for executada antes da execução desse comando, ou se a conexão com o servidor de banco de dados de origem ou de destino falhar durante a execução do comando, um erro será gerado e o aplicativo de console será encerrado.
conversion-report-folder: Especifica a pasta na qual o relatório de avaliação pode ser armazenado. (atributo opcional)object-name: Especifica os objetos de origem considerados para a conversão de esquema (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto chamado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").conversion-report-overwrite: Especifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-summary-report-to: Especifica o caminho no qual o relatório de resumo é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
SchemaConversionReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
report-errors(="true/false", com padrão como "false" (atributos opcionais))verbose(="true/false", com padrão como "false" (atributos opcionais))
Exemplo de sintaxe
<convert-schema
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Ou:
<convert-schema
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>"> (optional)
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</convert-schema>
migrate-data comando
Este comando migra os dados de origem para o destino.
object-name: Especifica os objetos de origem considerados para migrar dados (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: especifica o tipo do objeto destacado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").write-summary-report-to: Especifica o caminho no qual o relatório é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
DataMigrationReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
report-errors(="true/false", com padrão como "false" (atributos opcionais))verbose(="true/false", com padrão como "false" (atributos opcionais))
Exemplo de sintaxe
<migrate-data
write-summary-report-to="<file-name/folder-name>"
report-errors="<true/false>" verbose="<true/false>">
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<data-migration-connection
source-use-last-used="true"/source-server="<server-unique-name>"
target-use-last-used="true"/target-server="<server-unique-name>"/>
</migrate-data>
Ou:
<migrate-data
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>"
report-errors="<true/false>" verbose="<true/false>"/>
Comando Preparação da Migração
O comando Preparação da Migração inicia o mapeamento de esquema entre os bancos de dados de origem e de destino.
Observação
A configuração de saída padrão do console para os comandos de migração é o relatório de saída 'Completo' sem relatório de erros detalhado: apenas resumo no nó raiz da árvore de objetos de origem.
map-schema comando
Este comando fornece o mapeamento de esquema do banco de dados de origem para o esquema de destino.
source-schemaEspecifica o esquema de origem a ser migrado.sql-server-schemaEspecifica o esquema de destino para o qual o esquema de origem é migrado.
Exemplo de sintaxe
<map-schema source-schema="<source-schema>"
sql-server-schema="<target-schema>"/>
Comandos de gerenciabilidade
Os comandos Manageability ajudam a sincronizar os objetos do banco de dados de destino com o banco de dados de origem.
Observação
A configuração de saída padrão do console para os comandos de migração é o relatório de saída 'Completo' sem relatório de erros detalhado: apenas resumo no nó raiz da árvore de objetos de origem.
synchronize-target comando
Este comando sincroniza os objetos de destino com o banco de dados de destino.
Se esse comando for executado no banco de dados de origem, um erro será encontrado.
Se a conexão do banco de dados de destino não for executada antes da execução desse comando ou se a conexão com o servidor de banco de dados de destino falhar durante a execução do comando, um erro será gerado e o aplicativo de console será encerrado.
object-name: Especifica os objetos de destino considerados para sincronização com o banco de dados de destino (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto chamado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").on-error: Especifica se os erros de sincronização devem ser especificados como avisos ou erro. Opções disponíveis para on-error:report-total-as-warningreport-each-as-warningfail-script
report-errors-to: Especifica o local do relatório de erros para a operação de sincronização (atributo opcional)Se apenas o caminho da pasta for fornecido, um arquivo com o nome de
TargetSynchronizationReport.xmlé criado.
Exemplo de sintaxe
<synchronize-target
object-name="<object-name>"
on-error="<report-total-as-warning/report-each-as-warning/fail-script>" (optional)
report-errors-to="<file-name/folder-name>" (optional)
/>
Ou:
<synchronize-target
object-name="<object-name>"
object-type="<object-category>"/>
Ou:
<synchronize-target>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
</synchronize-target>
refresh-from-database comando
Este comando atualiza os objetos de origem do banco de dados.
Se esse comando for executado no banco de dados de destino, um erro será gerado.
Este comando requer um ou vários nós da metabase como parâmetro de linha de comando.
object-name: Especifica os objetos de origem considerados para atualização do banco de dados de origem (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").on-error: Especifica se os erros de atualização devem ser chamados como avisos ou erros. Opções disponíveis para on-error:report-total-as-warningreport-each-as-warningfail-script
report-errors-to: Especifica o local do relatório de erros para a operação de sincronização (atributo opcional)Se apenas o caminho da pasta for fornecido, um arquivo com o nome de
SourceDBRefreshReport.xmlé criado.
Exemplo de sintaxe
<refresh-from-database
object-name="<object-name>"
on-error="<report-total-as-warning/
report-each-as-warning/
fail-script>" (optional)
report-errors-to="<file-name/folder-name>" (optional)
/>
Ou:
<refresh-from-database
object-name="<object-name>"
object-type="<object-category>" />
Ou:
<refresh-from-database>
<metabase-object object-name="<object-name>"/>
</refresh-from-database>
Comandos de Geração de Scripts
Os comandos de Geração de Scripts executam duas tarefas: eles ajudam a salvar a saída do console em um arquivo de script e gravam a saída T-SQL no console ou em um arquivo com base no parâmetro especificado.
save-as-script comando
Usado para guardar os scripts dos objetos num ficheiro especificado quando metabase=target. Esta é uma alternativa ao comando de sincronização, no qual obtemos os scripts e executamos os mesmos no banco de dados de destino.
Este comando requer um ou vários nós da metabase como parâmetro de linha de comando.
object-name: Especifica os objetos cujos scripts devem ser salvos (suporta nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto chamado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").metabase: Especifica se é a metabase de origem ou de destino.destination: Especifica o caminho ou a pasta na qual o script deve ser salvo. Se o nome do arquivo não for fornecido, um nome de arquivo no formato(object_name attribute value).outserá fornecido.overwrite: Se verdadeiro, ele substitui o mesmo nome de arquivo, se existir. Pode ter os valores (verdadeiro/falso).
Exemplo de sintaxe
<save-as-script
metabase="<source/target>"
object-name="<object-name>"
object-type="<object-category>"
destination="<file-name/folder-name>"
overwrite="<true/false>" (optional)
/>
Ou:
<save-as-script
metabase="<source/target>"
destination="<file-name/folder-name>"
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</save-as-script>
convert-sql-statement comando
Este comando converte a instrução SQL.
contextEspecifica o nome do esquema.destinationEspecifica se a saída deve ser armazenada em um arquivo.Se esse atributo não for especificado, a instrução T-SQL convertida será exibida no console. (atributo opcional)
conversion-report-folderEspecifica a pasta na qual o relatório de avaliação pode ser armazenado. (atributo opcional)conversion-report-overwriteEspecifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-converted-sql-toespecifica o caminho do arquivo (ou) pasta no qual o T-SQL convertido deve ser armazenado. Quando um caminho de pasta é especificado junto com o atributosql-files, cada arquivo de origem tem um arquivo T-SQL de destino correspondente criado na pasta especificada. Quando um caminho de pasta é especificado junto com osqlatributo, o T-SQL convertido é gravado em um arquivo chamado Result.out na pasta especificada.sqlespecifica as instruções Sybase sql a serem convertidas, uma ou mais instruções podem ser separadas usando um ";"sql-filesespecifica o caminho dos arquivos sql que devem ser convertidos em código T-SQL.write-summary-report-toEspecifica o caminho onde o relatório de resumo é gerado. Se apenas o caminho da pasta for mencionado, o arquivo por nomeConvertSQLReport.xmlserá criado. (atributo opcional)A criação de relatórios de síntese tem mais duas subcategorias, a saber:
report-errors (="true/false", com 'false' como padrão (atributos opcionais)).
verbose (="true/false", com padrão como "false" (atributos opcionais)).
Este comando requer um ou vários nós da metabase como parâmetro de linha de comando.
Exemplo de sintaxe
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="<stdout/file>" (optional)
write-converted-sql-to ="<file-name/folder-name>"
sql="SELECT 1 FROM DUAL;">
<output-window suppress-messages="<true/false>" />
</convert-sql-statement>
Ou:
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="<stdout/file>" (optional)
write-converted-sql-to ="<file-name/folder-name>"
sql-files="<folder-name>\*.sql"
/>
Ou:
<convert-sql-statement
context="<database-name>.<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
sql-files="<folder-name>\*.sql"
/>