我有一个SQL Server数据表,其中包含一个xml列。我使用
我想知道如何从由
我不能使用
SqlDataAdapter
类的Fill
方法运行选择查询。执行后,该列的类型为string
。我想知道如何从由
Fill
方法实例化的DataTable
中确定实际的SQL Server数据类型(在本例中为xml
)。我不能使用
SqlDataReader
(它具有返回SQL Server数据类型信息的GetSchemaTable
方法),必须使用SqlDataAdapter/DataTable
。像这样做:DataTableReader reader = new DataTableReader(table);
DataTable schemaTable = reader.GetSchemaTable();
由于它似乎也不包含SQL Server数据类型信息,因此这也没有什么帮助。
SELECT user_type_id FROM sys.columns WHERE object_id = OBJECT_ID('Person.Person')
。如果该值为241
,则它是一个SQL Server数据类型为XML
的列(这些类型在sys.types
中定义)。 - marc_s