将XML列更新为SQL时,类型化数据集““ Operand type clash””错误更新

问题描述

|| 我有一个使用数据集设计器和sql 2005 DB设计的类型化数据集。我使用了sql Server资源管理器,只是将表拖到了设计器中。 表中的一列是XML字段,设计人员将其设置为System.String类型。类型化数据集设计器中没有XML数据类型的选项。 我正在向该数据集添加一条记录,并将XML字符串分配给XML(字符串)列。 当我尝试使用tableAdapterManager .Updateall方法更新sql时,它将产生错误:“操作符类型冲突:sql_variant与xml不兼容” 我不知道如何处理这个问题。我在网上找不到与此相关的任何内容,这似乎是一件非常简单且常见的事情。有任何想法吗?     

解决方法

        我找到了自己问题的答案。 正在更新的表存在于同一SQL Server上的第二个数据库中(数据集中有很多表,但是主数据库中不存在该表)。 有人在INSERT命令中添加了“ databasename.dbo.tablename”,希望它在其他数据库上进行更新。显然,SQL Server在处理XML类型时并不喜欢这种方式。 我将创建一个存储的proc来处理此表上的插入。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...