J'ai un hashset que je veux sérialiser vers une table SQL Server. Lorsque HashSet sérialisé ressemble à ceci ...Sérialisation du contenu de Hashset dans une table SQL
<InstallerContactIds>
<int>153771</int>
<int>209572</int>
</InstallerContactIds>
J'utilise ce qui suit pour insérer le code XML dans la table ...
INSERT INTO dbo.cv_AssessorActionPlanInstallers
SELECT @AssessorActionPlanId, InstallerId
From OPENXML (@XmlDocumentHandle, 'AssessorActionPlan/InstallerContactIds', 2)
With
(
InstallerId int 'int'
)
Cependant, je ne reçois que le premier id inséré dans la table . Est-il possible d'insérer tous les identifiants dans ce cas?
J'utilise SQL Server 2005
Salut Adam, merci pour la réponse. La méthode OPENXML concatène les identifiants ensemble et tente de les insérer (mais échoue en raison d'un débordement int). Je vais examiner le type de données XML que j'utilise 2005 – Col
Col, si vos nombres débordent int, vous pouvez essayer d'utiliser le type de données bigint. J'ai exécuté la requête en utilisant l'exemple XML que vous avez posté (en modifiant l'instruction OPENXML pour supprimer le 'AssessorActionPlan' puisque ce n'était pas dans votre exemple XML) et il a retourné les deux nombres correctement. –