0

Oracle 11g データベースから VARRAY 要素を読み取るのに苦労しています。私はCPP occi DLLを使用しています。他の型を読み取って VARRAY 型を更新できますが、VARRAY 値を選択しようとすると、occi dll で「アクセス違反」例外が発生します :(

単純化されたシナリオは次のとおりです。

CREATE TYPE ALIST AS VARRAY(50) OF NUMBER(8)

create table ATABLE (a nmumber(8), b mylist)

insert into mytable values(1, alist(1,2,3))

私がする時

oc::Statement* stmt = m_cConnection->createStatement("SELECT b FROM ATABLE");
stmt->executeQuery();

大丈夫ですが、同じ方法でVARRAYにアクセスしようとすると

oc::Statement* stmt = m_cConnection->createStatement("SELECT a FROM ATABLE");
stmt->executeQuery();

私は得る

OracleTester.exe の 0x0094a46d での初回例外: 0xC0000005: アクセス違反の読み取り場所 0x0000000000000120。

私が間違っていることは何ですか?VARRAY データを取得するには、別の API を使用する必要があるのでしょうか? またはいくつかの準備をしますか?

ヒントをいただければ幸いです...

4

0 に答える 0