【问题标题】:"ORA-00932 inconsistent datatypes expected - got CLOB" on varchar2 fieldvarchar2 字段上的“ORA-00932 不一致的数据类型预期 - 得到 CLOB”
【发布时间】:2015-01-13 21:57:42
【问题描述】:

我正在使用 LINQ 来查询定义如下的字符串字段:

"RUT" VARCHAR2(12 BYTE) NOT NULL ENABLE

Visual Studio 生成具有以下属性的 Producer 类:

[EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[DataMemberAttribute()]
public global::System.String RUT
{
    get
    {
        return _RUT;
    }
    set
    {
        if (_RUT != value)
        {
            OnRUTChanging(value);
            ReportPropertyChanging("RUT");
            _RUT = StructuralObject.SetValidValue(value, false);
            ReportPropertyChanged("RUT");
            OnRUTChanged();
        }
    }
}
private global::System.String _RUT;
partial void OnRUTChanging(global::System.String value);
partial void OnRUTChanged();`

我尝试运行以下代码:

var producer = db.Producers.FirstOrDefault(p => p.RUT == rut);

我得到一个例外说

{“ORA-00932:不一致的数据类型:预期 - 得到 CLOB”}

我不明白 CLOB 是如何参与其中的。 有谁愿意解释一下吗?

我的规格:

  • Visual Studio 2010
  • MVC 4
  • Oracle 数据库 10g
  • 适用于 Visual Studio 的 Oracle 开发人员工具

【问题讨论】:

  • 对确切的错误进行谷歌搜索
  • 我做到了。显然其他人收到了错误,但没有找到任何将 varchar2 字段解释为 CLOB 的人。

标签: c# linq visual-studio-2010 asp.net-mvc-4 oracle10g


【解决方案1】:

经过漫长的旅程,解决我的问题的方法是将 Oracle Developer Tools for VS 更新到其最新版本 (ODTwithODAC121021)。

希望这将有助于让世界变得更美好。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-16
    • 1970-01-01
    • 2018-04-30
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多