salut,
je veu faire du mapping du xml vers une base de données relationnelle, est ce qu'il y a des outils open sources ou bien des API qui fassent ça ?
Merci de votre aide ;)
Version imprimable
salut,
je veu faire du mapping du xml vers une base de données relationnelle, est ce qu'il y a des outils open sources ou bien des API qui fassent ça ?
Merci de votre aide ;)
Je pense que tu devrais voir coté dbUnit une API qui fournit des méthodes d'import-exportCitation:
Envoyé par soumou
@
sinon cela ne doit pas être trop dur à écrire situ veux un exemple demande
fraoustin a dit :je comprends pas ta question ?!?Citation:
sinon cela ne doit pas être trop dur à écrire situ veux un exemple demande
si tu veux intégrer un fichier xml dans un base relationnelle j'ai des exemples
je serais reconnaissant si tu le fais ! :PCitation:
fraoustin a écrit :
si tu veux intégrer un fichier xml dans un base relationnelle j'ai des exemples
un fichier xml d'exemple
et un programme python qui va faire des insertsCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 <load> <table name="user"> <name type="string">aoustin</name> <forname type="string">frederic</forname> <birthday type="string">04081978</birthday> </table> <table name="user"> <name type="string">aoustin</name> <forname type="string">fabien</forname> <birthday type="string">04081978</birthday> </table> <table name="user"> <name type="string">aoustin</name> <forname type="string">sylvain</forname> <birthday type="string">04081978</birthday> <age type="int">12</age> </table> <table name="famille"> <name type="string">aoustin</name> </table> </load>
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 from xml.dom.minidom import * import os.path, os import MySQLdb str_sql="insert into %s set(%s) values(%s)" servername = '172.16.10.27' dbname = 'optio' username = 'optio' password = 'optio' portdb=3306 def insert_sgbd(sql): connectionObject = MySQLdb.connect(host=servername, user=username, passwd=password, db=dbname, port=portdb) c = connectionObject.cursor() c.query(sql) connectionObject.commit() def generate_sql(node): for i in node.childNodes: if node.nodeType == Node.ELEMENT_NODE and i.nodeName == "table": str_col = "" str_val="" type_val="string" for j in i.childNodes: if j.nodeType == Node.ELEMENT_NODE: str_col = "%s,%s" % (j.nodeName, str_col) if j.getAttributeNode("type").nodeName == "int": type_val="int" for k in j.childNodes: if k.nodeType == Node.TEXT_NODE: if type_val=="int": str_val = "%s,%s" % (k.data, str_val) else: str_val = "'%s',%s" % (k.data, str_val) insert_sgbd(str_sql % (i.getAttributeNode("name").nodeName,str_col[:-1], str_val[:-1])) def load(path): try: xmldoc = parse(path) node_racine=xmldoc.documentElement generate_sql(node_racine) except Exception, e: raise e if __name__ == "__main__": load('/home/fraoustin/Desktop/essai.xml')
Merci pour ton aide fraoustin :P , mais je ne sais rien sur python. est ce possible d'avoir la meme chose en java par exemple ?
Bon là mes compétences en java sont faibles mais je regarde :lol:
Quel base utilise tu ?
Oracle et sql server ont des outils permettant l'intégration (quasi-)directe de ficher xml
Hello,
Pour effectuer ça tu as des frameworks open source comme ceci:
- Hibernate, très utilisé www.hibernate.org
- Ibatis, actuellement sur mon projet ibatis.apache.org
- JDO, java.sun.com/products/jdo/
Bonjour,
existe t'il le même système d'import/export XML/Mysql mais en utilisant PHP?
1000 mercis d'avance
Oui bien sur, SimpleXML intégré par défaut à PHP5 peut faire ce que tu demande, y a aussi Sablotron pour manipuler des fichers xml/xslt ;)
A+
Merci pour la réactivité et la réponse.
J'abuserais en demandant une version php4?
Bonjour,
je fais une recherche sur les mapper BDD Relationnelles et BDD objet vers XML.
Est-il possible de m'orienter sur quelques modèles ?
Mis à part Hibernate et JDBC que j'ai trouvé je veux d'autres exemples opensources.
(je ne maitrise pas encore JAVA je suis plutôt Delphi)
Merci pour votre aide.