Pergunta

Eu tenho um conjunto de XSDs do qual eu gerar classes de acesso a dados, procedimentos armazenados e muito mais.

O que não temos é uma maneira de gerar a tabela de banco de dados a partir destes - existe uma ferramenta que irá gerar as instruções DDL para mim

?

Isto não é o mesmo que Criar tabela DB a partir do conjunto de dados da tabela , como eu não tenho conjunto de dados tabelas, mas XSDs.

Foi útil?

Solução

Comercial produto:. De Altova XML Spy

Note que não há nenhuma solução geral para esta. Um XSD pode facilmente descrever algo que não mapeia para um banco de dados relacional.

Enquanto você pode tentar "automatizar" isso, seu XSD de deve ser concebido com um banco de dados relacional em mente, ou não vai funcionar bem.

Se os de XSD têm características que não mapeiam bem você vai ter que (1) projetar um mapeamento de algum tipo e, em seguida, (2) escrever seu próprio aplicativo para traduzir o XSD de em DDL.

Já esteve lá, feito isso. Trabalho para aluguer -. Nenhuma fonte aberta disponível

Outras dicas

Há uma ferramenta de linha de comando chamado XSD2DB , que gera banco de dados XSD-arquivos, disponível no SourceForge .

Eu uso XSLT para fazer isso. Escreva o seu XSD, em seguida, passar seus modelos de dados através de uma mão escrita XSLT que saídas SQL comandos. Escrever um XSLT é a maneira mais rápida e reutilizável que um programa personalizado / script você pode escrever.

Pelo menos isso é como eu faço isso no trabalho, e graças a isso eu tenho tempo para sair no SO:)

esquemas XML descrever modelos de dados hierárquicos e pode não mapear bem em um modelo de dados relacional. Mapeamento XSD da tabelas de banco de dados é objetos de mapeamento muito semelhantes às tabelas de banco de dados, na verdade, você poderia usar um quadro como Castor que faz as duas coisas, ele permite que você tome um esquema XML e gerar classes, tabelas de banco de dados e código de acesso de dados. Suponho que agora existem muitas ferramentas que fazem a mesma coisa, mas haverá uma curva de aprendizado e os mapeamentos padrão será mais como não ser o que você quer, então você tem que gastar personalizando tempo qualquer ferramenta que você usar.

XSLT pode ser o caminho mais rápido para gerar exatamente o código que você deseja. Se é um pequeno esquema de codificar que poderia ser mais rápido do que avaliar e learing um monte de novas tecnologias.

A melhor maneira de criar o esquema de banco de dados SQL usando um arquivo XSD é um programa chamado Altova XMLSpy, isso é muito simples:

  1. Crie um novo projeto
  2. Nas DTDs / esquemas pasta certa arquivos clicando e selecionando Adicionar
  3. Seleciona o arquivo XSD
  4. Abra o arquivo XSD adicionado clicando duas vezes
  5. Vá para a barra de ferramentas e olhar conversão
  6. Eles selecione Criar banco de dados estrutura de esquema XML
  7. Seleciona a fonte de dados
  8. E, finalmente, dar-lhe exportar os rotear chamadas deixar imediatamente seus esquemas scrip com SQL Server para executar a consulta.

Hope isso ajuda.

Criar um Java Modelo usando wsdl2java Axis (o que pode levar em arquivos .xsd).

Use uma ferramenta de geração de banco de dados para Java que leva em um modelo de Java. Certamente algo como Hibernate pode fazer isso? Eu escrevi minha própria ferramenta (leva um par de dias, também gera código CRUD em Java também) para me poupar tempo no trabalho, talvez este seria um projeto pessoal agradável?

Ou apenas fazê-lo manualmente de modo que você pode verificar tudo está correto e bom! ferramentas de banco de dados são bons o suficiente, agora que você pode zip através de criação de tabelas para um modelo sem muitos problemas.

pode dar uma olhada na ferramenta XSD no visual studio 2K8 ... Eu criei um conjunto de dados relacional a partir de um xsd e que poderia ajudar o seu fora de alguma forma.

hyperjaxb (versões 2, 3), na verdade, gera arquivos de mapeamento Hibernate e objetos de entidade relacionados e também faz um teste de ida e volta para um dado XSD eo arquivo XML de exemplo. Você pode capturar a saída log e veja as instruções DDL para si mesmo. Eu tive que ajustá-los um pouco, mas dá-lhe uma cópia azul básica para começar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top