【问题标题】:Invalid Identifier When Editing an ADO Query编辑 ADO 查询时标识符无效
【发布时间】:2015-05-06 02:37:19
【问题描述】:

我有一个 ADO 查询,用于收集数据并稍后用于更新该数据。 (Embarcadaro C++ Xe2 和 Oracle 10g)。 Rownum(别名为 pgnum)也被选中并在此查询中。发布通过此查询编辑的数据时,我收到无效的标识符“pgnum”。这似乎是 ADO 特有的问题,因为相同的代码在我们软件的早期版本中也能正常工作。我们最近将所有查询从 Tquery(旧 BDE 驱动)转换为 ADO。将“pgnum”添加到查询持久字段没有帮助。任何建议将不胜感激。 Table1 是一个 ADOQuery。

sql = "SELECT ROWNUM PGNUM, A.* FROM DOCUMENT_IMAGE A WHERE DOCNO = " + String(Form1->qryDocumentDOCNO->AsInteger) + " ORDER BY ROWNUM ";
Table1->Close();
Table1->SQL->Clear();
Table1->SQL->Add(sql);
Table1->Open();

Table1->Edit();
Table1IMAGE->LoadFromFile(filepath);
if (Table1->Modified){
    Table1->Post();
}

【问题讨论】:

  • 经过大量研究和测试后,在查询中保留 rownum 的同时,我什么也做不了。老实说,我不确定它完成了什么,我从别人那里接手了这个项目。无论如何,我删除了 rownum 并使用不同的字段来排序查询,问题解决了。

标签: oracle10g ado c++builder-xe2


【解决方案1】:

经过大量研究和测试,在查询中保留 rownum 时,我什么也做不了。老实说,我不确定它在完成什么,我从别人那里接手了这个项目。无论如何,我删除了 rownum 并使用不同的字段来排序查询,问题解决了。

【讨论】:

  • 如果你对我的回答投了反对票,请告诉我它有什么问题。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-21
  • 1970-01-01
  • 1970-01-01
  • 2023-01-12
相关资源
最近更新 更多