Top > OOobbs2 > 95

OOobbs2/95 Edit

  • サマリ: Baseでテーブルのフィールド名の取得
  • 環境: Basic
  • 状態: 解決
  • 投稿者: ike@九州?
  • 投稿日: 2008-03-21 (金) 09:47:48

質問 Edit

Baseに関するBasicの勉強中です。

ダイアログで登録中のデータソースの任意のテーブルにアクセスできるようになったのですが、テーブルの全てのフィールド名を取得するにはどうすればよいのでしょうか?

SELECT文の生成に利用しようと思っています

回答 Edit

  • com.sun.star.sdbcx.XColumnsSupplier インターフェースの getColumns メソッドを利用するのはどうでしょうか?

フォームや com.sun.star.sdb.RowSet サービスであれば次のようにすればフィールド名を取得できます。

Sub Main
  oDrawPage = ThisComponent.getDrawPage()
  oForms = oDrawPage.getForms()
  oObj1 = oForms.getByName("Standard")
  oColumns = oObj1.getColumns()
  vElementNames = oColumns.getElementNames()
  msgbox Join(vElementNames, ", ")
End Sub

フィールド名から列インデックスを探すのは OOoBasic/Base/RowSet#c596ecc7

しかし、データベースさっぱり分かりません…。

  • はにゃ?? 2008-03-21 (金) 18:17:11
  • RowSet サービス下だったのですが、一度 SELECT * FROM テーブル名で、 oRowSet.execute() 実行後にできました、深謝。煩雑に問い合わせするかも知れませんがよろしくお願いいたします… Join はこんな使い方出来るんですね -- ike@九州? 2008-03-22 (土) 09:19:06

感想,コメント,メモ Edit



Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes