Bonjour à tou(te)s,

J'essaye d'importer un fichier XML dans ma base (sql server 2008) en utilisant le composant SQLXMLBulkLoad.

L'appel est fait depuis un code VB et s'exécute sans erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
      Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkload.4.0")
      objBL.ConnectionString = g_oDbConnection.ConnectionString & ";integrated security=SSPI" 
      objBL.KeepIdentity = False
      objBL.Transaction = False 'True
      objBL.ErrorLogFile = "c:\error.xml"
      objBL.Execute txtfileXSD, txtfileXML
      Set objBL = Nothing
Mes fichers XSD et XML de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
Fichier TESTImport.XSD
<?xml version="1.0"?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
		xmlns:dt="urn:schemas-microsoft-com:xml:datatypes"
		xmlns:sql="urn:schemas-microsoft-com:xml-sql">
  <ElementType name="ROOT" sql:is-constant="1">
    <element type="TestImport" />
  </ElementType>
  <ElementType name="TestImport" sql:relation="TestImport">
    <AttributeType name="Id" dt:type="int" />
    <AttributeType name="Name" dt:type="string" />
    <AttributeType name="Data" dt:type="string" />
 
    <attribute type="Id" sql:field="Id" />
    <attribute type="Name" sql:field="Name" />
    <attribute type="Data" sql:field="Data" default="toto123" />
  </ElementType>
</Schema>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
<ROOT>
  <TestImport>
    <Id>1111</Id>
    <Name>Sean Chai</Name>
    <Data>NY</Data>
  </TestImport>
  <TestImport>
    <Id>1112</Id>
    <Name>Tom Johnston</Name>
    <Data>LA</Data>
  </TestImport>
  <TestImport>
    <Id>1113</Id>
    <Name>Institute of Art</Name>
  </TestImport>
  <TestImport>
    <Id>1114</Id>
    <Name>blblbl</Name>
    <Data></Data>
  </TestImport>
</ROOT>
Mon problème se trouve dans le résultat dans ma base :
Tous les champs de la colonne Name sont a NULL et tous les champs de la colonne Data sont à la valeur par défaut (= "toto123", ce qui était prévu).
Quelqu'un aurait il une idée pour que je récupere mes données dans la colonne Name ???
D'avance merci