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 を使用する必要があるのでしょうか? またはいくつかの準備をしますか?
ヒントをいただければ幸いです...