レコードセットでは開けないテーブルからレコードを取得するには

[戻る]
かな 2001/03/26(月) 14:50:10
はじめまして。かなです。
VC++は初心者ですが、よろしくお願いします。

わたしは今、ODBC接続でデータベースからレコードを参照し、
リストビューにレコードを一覧表示するプログラムを作ってます。

それで、参照するデータベースのある1つのカラムが
ODBC接続に対応してない属性(?)なのか、
CRecordsetクラスを作成し、Open関数を使っても、
レコードセットを開くことができず、タイムアウトエラーとなります。

ちなみに、参照するテーブルをAccessのODBCリンクで
見てみようと思ってリンクを張っても、
レコードが1つでも入っていると、「Restricted data type attribute violation」
(NULL値が、問題のカラムの属性に違反していることのメッセージと思うのですが)
というエラーメッセージが表示されます。

CDatabaseクラスで、ExecuteSQL関数を用いて直接SQLを発行すると、
エラーは出ないんですが、
ExecuteSQL関数はレコードを返さないので、
結局リストビューにレコードを一覧表示することが
できません。

CDatabaseオブジェクトのみで、参照したテーブルのレコードを
リストビューに一覧表示することはできないでしょうか。

お気づきの点、解決方法等があれば、
教えてください。

よろしくお願いします。

かな 2001/03/26(月) 21:05:29
[[解決]]
こんばんわ。かなです。
解決(?)したので、事故レスします。

CDatabaseオブジェクトを使って、
ExecuteSQL関数から、直にSQLを発行し、
問題のカラムが存在しない「VIEW」を作成し、
その「VIEW」をレコードセットで参照しました。
(作成した「VIEW」は、参照後、削除します。)

また、わからないことがあったら、書き込みたいと思いますので、
よろしくお願いします。

それでは失礼しました。

古いスレッドには追加発言できません。