Bonjour

je suis en sqlserveur 2005

J'ai un schema XML
Code XML : 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
CREATE XML SCHEMA COLLECTION BooksSchemaCollection AS 
N'<?xml version="1.0" encoding="UTF-16"?> 
<xsd:schema elementFormDefault="unqualified" 
   attributeFormDefault="unqualified" 
   xmlns:xsd="http://www.w3.org/2001/XMLSchema" > 
    <xsd:element name="book"> 
                        <xsd:complexType mixed="false"> 
                                    <xsd:sequence> 
                                                <xsd:element name="name" type="xsd:string"/> 
                                                <xsd:element name="author" type="xsd:string"/> 
                                                <xsd:element name="publisher" type="xsd:string"/> 
                                                <xsd:element name="cost" type="xsd:integer"/> 
                                                <xsd:element name="comments" type="xsd:string"/> 
                                    </xsd:sequence>                       
                        </xsd:complexType> 
    </xsd:element> 
</xsd:schema>';

J'ai une table
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
CREATE TABLE XMLTable 
(id INT, xDoc  XML (BooksSchemaCollection)) 
GO
j'ai un insert
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Insert into XMLTable 
Values (1, '<book><name>Deception Point</name><author>Dan Brown</author> <publisher>BPB Publications</publisher><cost>12</cost> 
                        <comments>Excellent book and a case study for suspense topics</comments> 
</book>')
J'ai une erreur :

Msg 6913, Niveau 16, État 1, Ligne 1
Validation XML : déclaration introuvable pour l'élément 'book'. Emplacement : /*:book[1]
Pourquoi ?
Merci