How can I store XML data in SQL Server 2005?
Much like CLR UDTs ( link to UDT FAQ ), XML is now a new first-class datatype in SQL Server 2005. Developers may be tempted to use this datatype in order to avoid having to write code to “shred” XML data into tables (i.e. instead of using OPENXML to populate tables with the data.) Unfortunately, using the XML datatype like this has many of the same problems as representing data in user-defined types. Developers should keep performance in mind, as querying a node of an XML column will require the engine to evaluate a separate XML query for each row of the table. Normalization issues are also present, just as when using CLR UDTs. Ensuring data integrity will be extremely difficult in databases that make too much use of the XML datatype.