无法加入备注,OLE或超链接对象

时间:2014-07-14 09:45:36

标签: c# asp.net ms-access

数据库:MS-Access

这些是我的数据库表和列。

Table: proje

Field Name     Type
-------------  -----------------------
id             Integer(Auto Increment)
projeAdi       Long Text
sirketAdi      Long Text

Table: calisan

Field Name     Type
-------------  -----------------------
id             Integer(Auto Increment)
gun            Date/Time
isTanimi       Long Text
kulID          Integer
basSaat        Date/Time
bitisSaat      Date/Time
proje          Long Text
istipi         Long Text

SQL查询:

sorgu.Connection = baglanti;
baglanti.Open();    
sorgu.CommandText = "SELECT * FROM calisan INNER JOIN proje ON proje.projeAdi = calisan.proje;";
oku = sorgu.ExecuteReader();

我收到错误

  

无法加入备注,OLE或超链接对象(proje.projeAdi = calisan.proje)

我如何解决这个限制?

1 个答案:

答案 0 :(得分:0)

如错误消息所示,您不能直接在JOIN中使用备注字段(在Access 2013中称为“长文本”字段),因此

cmd.CommandText =
        "SELECT * FROM calisan " +
        "INNER JOIN proje ON proje.projeAdi = calisan.proje";

不起作用。你可以使用

cmd.CommandText =
        "SELECT * FROM calisan " +
        "INNER JOIN proje ON Left(proje.projeAdi,255) = Left(calisan.proje,255)";

有以下警告:

  1. 仅比较每个字段的前255个字符,
  2. 查询可能执行缓慢。