• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2007 VBA Daoクラス)

Excel VBAでのOracleデータベースからの値取得方法についての質問

このQ&Aのポイント
  • Excel2007 VBAを使用してOracle10gのデータベースから値を取得する方法について質問があります。現在はTestDaoとTestBeanのクラスを使用して値を取得し、描画していますが、VBA的に変なやり方ではありませんか?他により良い方法はあるのでしょうか?
  • Excel2007 VBAのコーディング設計において、Oracle10gのデータベースから値を取得する方法について質問があります。現在はTestDaoとTestBeanのクラスを使用して値を取得し、描画していますが、これが最適な方法なのでしょうか?もしそうでない場合、より良い方法があれば教えてください。
  • Excel2007 VBAを使用してOracle10gのデータベースから値を取得する方法についての質問です。現在はTestDaoとTestBeanのクラスを使用して値を取得し、描画していますが、もっと効率的な方法はないのでしょうか?他の方法を知っている方がいれば、教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

先ず、S2で言うDAOとVBAで言うDAOは全然別物です。 それにS2だからBeanを使える(S2がセッタを呼び出してくれる)ので あって、S2を利用できない環境では誰がネタを仕込んでくれると言う のでしょう? ADOによるDBアクセスを参照する方が良いでしょう。

ShimantoGa
質問者

お礼

回答ありがとうございます。 >誰がネタを仕込んでくれると言うのでしょう? S2DaoなどO/Rマッピングツールは使用していません。 BeanもDaoも全て自前で作りました。 >ADOによるDBアクセスを参照する方が良いでしょう。 的外れなことを言っていたら申し訳ありません。 色々調べたのですが、ADOはDB接続を簡単にしてくれるだけでDaoやエンティティといった思想はないですよね。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_130_030.html (ADOの役割?) Set Conn = CreateObject("ADODB.Connection") Conn.Open "Provider=MSDAORA;" & "Data Source=" & _ oracle_sid & ";", oracle_user, oracle_password 'Set ResultSet = Conn.Execute(Sql) 'Set Bean = New TestBean 'Bean.SetCode = ResultSet(0).Value 'ArrayList.Add(Bean) 'Set ResultSet = Nothing 'Conn.Close 'Set Conn = Nothing ですのでデータベース層とロジック層を切り分ける手段にどのようなものがあるのかと考え質問しました。