Hi Jason,
In my experience, we were using a text based column in PostGRE to store the XML profile data, so a LIKE command could (and did) work. It was a great way for us to find members by doing a comparison based on some of their profile data. For example,
Code:
SELECT username
FROM users
WHERE profile_data LIKE '%<firstname>Ben</firstname>%'
I think that the newer SQL Server editions have an XML column type. I'm not sure if a LIKE statement would correctly gather data from an XML column... Perhaps XSL Transformations would work? When we really wanted to manipulate profile data, we used XSL Transformations to get and put data into the database. In our case, it worked great and allowed for some additional abstraction (though we could have done without XSLTs altogether -- see below). However, if SQL Server has an XML column type, it may be tightly integrated with XSLT.
In your case, I would certainly recommend finding the SQL syntax to search the database PRIOR to returning a result set to the front end. Regardless of what you are looking for, I'd take as a principle that the database would do a faster search than any front end would. That and, by filtering the results prior to returning a result set -- you also lessen the network traffic!
But don't let me send you on a path to an overly complex solution! Some of us constructed the XML data by just putting strings of data together to form the XML document (me). As long as the string parsed fine, then all was great! I honestly don't know if MS SQL will play nicely with this if you decide to go down the XML column road.
Best of luck with your dynamic column, and XML! The world needs more XML literate people I reckon, I'm still resisting

. My XML skills (probably shouldn't even claim xml skills) are very basic.
Matt