Comment puis-je créer des tables de base de données à partir de fichiers XSD?
J'ai un ensemble de XSDs à partir de laquelle je générer les classes d'accès aux données, procédures stockées et plus.
Ce que je n'ai pas de est un moyen de générer de la table de base de données à partir de celles - ci- est-il un outil qui permettra de générer les instructions DDL pour moi?
Ce n'est pas le même que Créer la table DB de table d'ensemble de données, comme je n'ai pas dataset tables, mais XSDs.
- Je vois toujours ce que voté hors sujet sur certaines questions. Pourquoi n'avons-nous pas le laisser être? Ce n'est pas du spam, il est valide d'un point de développement. Je sais ce que sont les règles dit, mais je pense qu'il serait bien de trouver tout développement dans la, de 1 place, au lieu d'avoir à vous connecter à un autre site pour poster une question.
Vous devez vous connecter pour publier un commentaire.
Commercial du Produit: Altova du XML Spy.
Remarque qu'il n'y a pas de solution générale à ce. Un XSD peut facilement décrire quelque chose qui ne correspond pas à une base de données relationnelle.
Alors que vous pouvez essayer à "automatiser" voilà, XSD doit être conçu avec une base de données relationnelle à l'esprit, ou s'il ne fonctionne pas bien.
Si le XSD ont des caractéristiques qui ne correspondent pas bien, vous aurez à (1) la conception d'une cartographie de quelque sorte et puis (2) écrire votre propre application pour traduire le XSD en DDL.
Été là, fait cela. Travailler pour la location -- pas de l'open source disponibles.
Il est un outil de ligne de commande appelé XSD2DB, qui génère de la base de données xsd fichiers, disponible sur sourceforge.
DataSet
pour interpréter le Schéma XML, alors qu'il devrait être à l'aide deXmlSchemaSet
ouXmlSchema
de compiler et de manipuler le fichier de schéma. Le code est assez dépendante de laDataSet
mise en œuvre, cependant, je n'ai pas plonger dans le modifiant pour être fonctionnelle.- Je utiliser XSLT pour le faire.
Rédigez votre XSD puis passer vos modèles de données par le biais d'un écrit à la main XSLT que les sorties des commandes SQL. L'écriture d'une transformation XSLT est plus rapide et réutilisables que d'un personnalisé programme /script vous pouvez écrire.
Au moins c'est comment je le fais au travail, et grâce à qui j'ai eu le temps de traîner sur DONC 🙂
Schémas XML décrire hierarchial des modèles de données et risque de ne pas correspondre à un modèle de données relationnel. Cartographie XSD de tables de base de données est très similaire objets de mappage de tables de base de données, en fait, vous pourriez utiliser un framework comme Castor qui fait les deux, il vous permet de prendre un schéma XML et de générer des classes, tables de base de données, de données et de code d'accès. Je suppose qu'il y a maintenant de nombreux outils qui font la même chose, mais il y aura une courbe d'apprentissage et les mappages par défaut sera de plus de ne pas être ce que vous voulez, si vous avez à dépenser de temps à personnaliser n'importe quel outil que vous utilisez.
XSLT peut-être la façon la plus rapide pour générer exactement le code que vous souhaitez. Si c'est un petit schéma de codage en dur elle pourrait être plus rapide que d'évaluer et de déblai un tas de nouvelles technologies.
La meilleure façon de créer le schéma de base de données SQL à l'aide d'un fichier XSD est un programme appelé Altova XMLSpy, c'est très simple:
Espère que cela aide.
Créer un Modèle Java à l'aide de l'Axe wsdl2java (qui peut prendre en .les fichiers xsd).
Utiliser une base de données de l'outil de production pour Java qui prend en Java Modèle. Sûrement quelque chose comme Hibernate peut faire cela? J'ai écrit mon propre outil (prend une couple de jours, génère également CRUD code en Java aussi) pour me sauver du temps au travail, peut-être que ce serait un beau projet personnel?
Ou tout simplement le faire manuellement de sorte que vous pouvez vérifier que tout est correct et bon! Outils de base de données sont assez bon, maintenant que vous pouvez zip à travers la création de tables pour un modèle sans trop de problèmes.
Pourrait prendre un coup d'oeil à l'outil XSD dans visual studio 2k8... j'ai créé un relationnel dataset à partir d'un fichier xsd et il peut aider votre en quelque sorte.
xsd.exe
pour générer le schéma, mais vous devez ajouter vous-même les relations, voir le XML Exemples de Chargement en masse sur MSDN, ou de l'exemple dans cette question. (Je me souviens la correction de certains types de données, mais peut-être que c'était la génération de laXSD
de laXML
.)xsd.exe
semble avoir changé sur Windows 7. Je l'ai dans beaucoup Microsoft SDKs répertoires, de sorte qu'il ne semble pas dépendre de Visual Studio plus(?). Un répertoire serait:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools
.hyperjaxb (versions 2 et 3) génère hibernate mapping fichiers et aux objets de l'entité et a également fait un aller-retour de test pour un XSD et exemple de fichier XML. Vous pouvez capturer la sortie du journal et de voir les instructions DDL pour vous-même.
J'ai dû bidouiller un peu, mais il vous donne une impression bleu pour commencer.