Comando wsschema

A ferramenta de esquema pode ser utilizada para visualizar o esquema do banco de dados na forma XML ou para corresponder um esquema XML a um banco de dados existente.

A ferramenta wsschema pode refletir no esquema de banco de dados atual, convertendo-o, opcionalmente, em uma representação XML para manipulação adicional. A ferramenta de esquema pode usar uma definição de esquema XML, calcular as diferenças entre o XML e o esquema de banco de dados existente e aplicar as mudanças necessárias para tornar os bancos de dados correspondentes ao esquema XML. O formato XML utilizado pela ferramenta de esquema é um resumo das diferenças em dialetos SQL utilizados por diferentes fornecedores. A ferramenta também adapta automaticamente sua SQL para atender a dependências estrangeiras, portanto, a ferramenta de esquema é útil como uma forma geral de manipular os esquemas.

Sintaxe

A sintaxe do comando é a seguinte:

[AIX][HP-UX][Linux][Solaris][z/OS]
wsschema.sh [parameters][arguments]
[IBM i]
wsschema [parameters][arguments]
[Windows]
wsschema.bat [parameters][arguments]

Emita o comando a partir do subdiretório bin do diretório profile_root.

Parameters

A ferramenta wsschema aceita o conjunto padrão de argumentos da linha de comandos definidos pela estrutura de configuração juntamente com o seguinte:
  • -ignoreErrors/-i <true/t | false/f>: Se configurado para false, uma exceção ocorrerá se a ferramenta encontrar quaisquer erros de banco de dados.

    O padrão é configurado para false.

  • -file/-f <stdout | output file>: Use esta opção para gravar um script SQL para as modificações de esquema planejadas, em vez de confirmá-las no banco de dados.

    Quando usado com as ações de exportação ou reflexão, o arquivo nomeado será usado para gravar o XML de esquema exportado. Se o arquivo nomear um recurso no caminho de classe, os dados serão gravados nesse recurso. Utilize stdout para gravar na saída padrão. A configuração padrão é stdout.

  • -openjpatables/-ot <true/t | false/f>: Ao refletir o esquema, este parâmetro determina se refletirá as tabelas e sequências cujos nomes começam com OPENJPA_.

    Determinados componentes OpenJPA podem usar tais tabelas e sequências, como o factory de esquema de tabela. Ao usar outras ações, o openjpaTables controlará se essas tabelas podem ser eliminadas. A configuração padrão é false.

  • -dropTables/-dt <true/t | false/f>: Quando essa opção é configurada para true, o esquema eliminará as tabelas que não estiverem sendo usadas durante as ações de retenção e atualização.

    O padrão é true.

  • -dropSequences/-daq <true/t | false/f>: Se essa opção for configurada para true, o esquema eliminará as sequências que não estiverem sendo usadas durante as ações de retenção e atualização.

    O padrão é true.

  • -sequences/-sq <true/t | false/f>: Este sinalizador determina se as sequências podem ser manipuladas.

    O padrão é true.

  • -indexes/-ix <true/t | false/f>: Este sinalizador determina se os índices podem ser manipulados em tabelas existentes.

    O padrão é true.

  • -primaryKeys/-pk <true/t | false/f>: Este sinalizador determina se as chaves primárias podem ser manipuladas em tabelas existentes.

    O padrão é true.

  • -foreignKeys/fk <true/t | false/f>: Este sinalizador determina se as chaves estrangeiras podem ser manipuladas em tabelas existentes.

    O padrão é true.

  • -record/-r <true/t | false/f>: Este sinalizador permite ou impede a gravação de mudanças no esquema feitas pela ferramenta de esquema no factory de esquema atual.

    Selecione true para permitir a gravação de mudanças no esquema ou selecione false para impedir a gravação das mudanças no esquema. O padrão é configurado para true.

  • -schemas/-s <schema list>: Indica uma lista de nomes de esquemas e tabelas que o OpenJPA deve acessar ao executar a ferramenta de esquema.

    Isso equivale a configurar a propriedade openjpa.jdbc.Schemas para ser executada uma vez.

    Importante: A ferramenta de esquema aceita o sinalizador -action/-a. Várias ações podem ser compostas em uma lista separada por vírgulas. As ações disponíveis são:
    • add: Essa será a ação padrão se nenhuma outra ação for especificada. Ela atualizou o esquema com os documentos XML especificados, incluindo tabelas, colunas, índices ou outros componentes. Essa ação nunca elimina nenhum componente de esquema.
    • retain: Essa ação mantém todos os componentes de esquema na definição XML especificada, mas elimina o restante do banco de dados. Ela nunca inclui nenhum componente de esquema.
    • drop: Elimina todos os componentes do esquema XML. Essa ação eliminará as tabelas apenas se houver 0 colunas depois de eliminar todas as colunas listadas no XML.
    • refresh: Essa ação é o equivalente das funções retain e add.
    • build: Gera SQL para construir um esquema correspondente ao do arquivo XML fornecido. Ao contrário da ação add, essa opção não considera o fato de que parte do esquema definido no arquivo XML já pode existir no banco de dados. Essa ação normalmente é usada com o sinalizador de parâmetro -file/-f para gravar um script SQL. Esse script pode ser usado posteriormente para recriar o esquema no XML.
    • reflect: Gera uma representação XML do esquema de banco de dados atual.
    • createDB: Essa ação gera SQL para recriar o banco de dados atual. Essa ação normalmente é usada com o sinalizador de parâmetro -file/-f para gravar um script SQL que pode ser usado para recriar o esquema atual em um novo banco de dados.
    • dropDB: Gera a SQL para eliminar o banco de dados atual. Tal como a ação createDB, isso pode ser usado com o sinalizador de parâmetro -file/-f para gerar o script de uma eliminação de banco de dados em vez de executá-la manualmente.
    • import: Importa a definição de esquema XML especificada para a fábrica de esquemas atual.
      Nota: Essa ação não fará nada se o factory de esquema não armazenar um registro do esquema.
    • export: Exporta a definição de esquema armazenado do factory de esquema atual para um arquivo XML.
      Nota: Isso pode produzir um arquivo vazio se o factory de esquema não armazenar um registro do esquema.
    • deleteTableContents: Essa ação implementa o SQL para excluir todas as linhas de todas as tabelas que o OpenJPA localiza.

Uso

A ferramenta wsschema é usada para obter um arquivo XML que descreve o esquema do seu banco de dados. Para gerar um arquivo de esquema XML:
  • As tabelas do banco de dados e a conexão com o banco de dados deverão estar configuradas.
  • Execute a ferramenta wsschema a partir da linha de comandos no diretório $ {profile_root}/bin/.
  • A ferramenta gera um arquivo XML que descreve o esquema do banco de dados.
As mensagens e os erros são registrados no console administrativo, conforme especificado pela configuração.

Exemplos

Incluir os componentes de esquema necessários no banco de dados para corresponder ao documento XML especificado sem eliminar dados:

[AIX][HP-UX][Linux][Solaris][z/OS]
$ wsschema.sh targetSchema.xml
[IBM i]
$ wsschema targetSchema.xml
[Windows]
$ wsschema.bat targetSchema.xml

Repetir a mesma ação do exemplo anterior, desta vez sem alterar o banco de dados, mas gravando as alterações planejadas em um script SQL:

[AIX][HP-UX][Linux][Solaris][z/OS]
 wsschema.sh -f script.sql targetSchema.xml
[IBM i]
 wsschema -f script.sql targetSchema.xml
[Windows]
 wsschema.bat -f script.sql targetSchema.xml

Grave um script SQL que recria o banco de dados atual:

[AIX][HP-UX][Linux][Solaris][z/OS]
$ wsschema.sh -a createDB -f script.sql
[IBM i]
$ wsschema -a createDB -f script.sql
[Windows]
$ wsschema.bat -a createDB -f script.sql

Atualize o esquema e exclua todo o conteúdo de todas as tabelas das quais a OpenJPA tem conhecimento:

[AIX][HP-UX][Linux][Solaris][z/OS]
$ wsschema.bat -a refresh,deleteTableContents
[IBM i]
$ wsschema -a refresh,deleteTableContents
[Windows]
$ wsschema.bat -a refresh,deleteTableContents

Eliminar o banco de dados atual:

[AIX][HP-UX][Linux][Solaris][z/OS]
$ wsschema.sh -a dropDB
[IBM i]
$ wsschema -a dropDB
[Windows]
$ wsschema.bat -a dropDB

Grave uma representação XML do esquema atual no arquivo schema.xml.

[AIX][HP-UX][Linux][Solaris][z/OS]
$ wsschema.sh -a reflect -f schema.xml
[IBM i]
$ wsschema -a reflect -f schema.xml
[Windows]
$ wsschema.bat -a reflect -f schema.xml

Informações adicionais

Para obter informações adicionais, leias as informações do JDBC na documentação do Apache OpenJPA.


Ícone que indica o tipo de tópico Tópico de Referência



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rejb_wsschema
Nome do arquivo: rejb_wsschema.html