读书人

复制XML的数据到sql2005中遇到的有关问

发布时间: 2012-01-19 20:57:59 作者: rapoo

复制XML的数据到sql2005中遇到的问题,请高手帮忙啊


我用如下方法复制XML的数据到sql2005中,


string xmlFilename;
xmlFilename = sXMLFile;
DataSet newDataSet = new DataSet();

foreach ( DataTable t in newDataSet.Tables)
{
t.BeginLoadData();
}
newDataSet.ReadXml(xmlFilename);
foreach (DataTable t in newDataSet.Tables)
{
t.EndLoadData();

}


现在遇到问题,就是 在数据中有怪字符,就会newDataSet.ReadXml(xmlFilename)的时候抱错,
“ ”(十六进制值 0x1C)是无效的字符。 行 31882,位置 112。

<scaddress> <![CDATA[哈尔滨 ]]> </scaddress>
哈尔后面的这个 就是那个怪字符

XML是如下方法生成的

set @bcp= 'bcp "select row from ##B2BXMLTemp order by id asc " queryout " '+@FilePath+ ' " -c -S '+@sqlserver+ ' -U '+@UserName + ' -P '+@PassWord

exec master..xp_cmdshell @bcp


请问, 有什么方法可以解决这个问题?不论在导出XML数据的时候屏蔽怪字符,或导入的时候,只要解决这个问题就好,万分感谢

[解决办法]
我只做过sql2000到xml,还没做过这个。关注。。帮顶
[解决办法]
这是这个xml类的规定.不能出现非法字符

读书人网 >SQL Server

热点推荐