0

次の説明の方法を使用して、null値を含むレコードセットにアクセスしようとしています。

http://msdn.microsoft.com/en-us/library/ff965871.aspx

私は特にDAOを使用していますが、次のようなアクセスクエリから結果を返す場合を除いて機能します。

SELECT MAX(ID) FROM [TABLE] WHERE KEY = SOMETHING NOT THERE

これは、null値を含む1レコードのレコードセットを返し、レコードセットポインタ関数を使用してそれにアクセスしようとします。

rsp->getitem(0)

動作しますが

rsp->getitem(0)->getvalue()

オンラインで見つけることができない奇妙な例外をスローします。C ++でNULL値を処理する方法を知っている人はいないかと思いますが、「ISNULL」のようなVBAで機能する関数は利用できないようです。

4

1 に答える 1

0

getvalue はバリアント型を返す必要があり、返された値の vt プロパティを確認できます。ほとんどの場合、何も返されない場合は VT_NULL になります。

于 2012-06-06T09:57:33.310 に答える