【问题标题】:how to excute a simple query use sqlapi++ with oracle如何使用 sqlapi++ 和 oracle 执行简单查询
【发布时间】:2010-05-26 18:53:16
【问题描述】:

代码如下:

cmd1.setCommandText("select * from lp.human_tb_meta_sex"); cmd1.Execute();

while (cmd1.FetchNext()) { SAString sas=cmd1.Field("id").asString(); cout

它给了我 ORA-00932 错误...我不知道为什么..?

【问题讨论】:

  • lp.human_tb_meta_sex 是表、视图还是什么?我怀疑一个视图,并且视图中有一个无效的表达式。可以从 sql*plus 中选择吗?
  • lp.human_tb_meta_sex 表就是表,我可以在 sql*plus 中进行查询,有什么想法吗?我发现当表中的主键是Number时会出现这个错误,我将类型更改为Varchar2,错误消失了......但是我需要主键是Number。

标签: c++ oracle ora-00932


【解决方案1】:

大概“id”是主键。

如果它在数据库中定义为 NUMBER,则可能包括分数(例如 3.5)。

如果您将其定义为 NUMBER(10,0),那么它将始终为整数。

由于您试图将其作为字符串 [.asString()] 拉出,因此可能存在转换问题。

【讨论】:

    猜你喜欢
    • 2023-03-18
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 2019-07-28
    • 2022-08-03
    • 1970-01-01
    • 1970-01-01
    • 2014-05-25
    相关资源
    最近更新 更多