出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

ASPからアクセスのテーブル名を取得   Yoshiさん [2004/01/10 20:24:57] [3966]
  Re:ASPからアクセスのテーブル名を取得   fujiさん [2004/01/11 10:54:04] [3967]
    Re:ASPからアクセスのテーブル名を取得   fujiさん [2004/01/11 11:50:19] [3968]
      Re:ASPからアクセスのテーブル名を取得   Yoshiさん [2004/01/11 22:21:31] [3969]
        Re:ASPからアクセスのテーブル名を取得   Yoshiさん [2004/01/11 22:28:21] [3970]
          ありがとうございました。   Yoshiさん [2004/01/11 23:11:48] [3971]

[3966] ASPからアクセスのテーブル名を取得
投稿者:Yoshiさん 2004/01/10 20:24:57
度々お世話になります。
ASPからアクセス(MDB)の全テーブル名を取得したいのですが、
いい方法が見つからず大変困っています。
できれば、SQL文から一発で取得したいと
考えているのですが、これって可能なんでしょうか?

これはASPではなく、アクセスの問題かもしれませんが、
宜しければ、アドバイス頂けないでしょうか?
よろしくお願いします。
Yoshi


[3967] Re:ASPからアクセスのテーブル名を取得
投稿者:fujiさん 2004/01/11 10:54:04
こんにちわ Yoshiさん

> ASPからアクセス(MDB)の全テーブル名を取得したいのですが、

DAOでもADOでもテーブル一覧は取り出せたと思います。

SQLで取得するなら、MSysObjectsテーブルから取得できます。
ACCESSのバージョンによってテーブル名が違うかもしれないので
ACCESSのメニュー[ツール]→[オプション]の表示タブのシステムオブジェクトにチェックをいれてテーブル名を確認してください。

[3968] Re:ASPからアクセスのテーブル名を取得
投稿者:fujiさん 2004/01/11 11:50:19
補足しておきます。

> DAOでもADOでもテーブル一覧は取り出せたと思います。

DAO DatabaseオブジェクトのTableDefsコレクション
ADO ConnectionオブジェクトのOpenSchemaメソッド

[3969] Re:ASPからアクセスのテーブル名を取得
投稿者:Yoshiさん 2004/01/11 22:21:31
Fujiさん、ありがとうございます。

アクセス上からOpenSchemaメソッドを動かせたのですが、
ASPからだと、
Object or provider is not capable of performing requested operation.
のようなエラーが出てしまいます。
これはVersionの違いでしょうか?

ASPのコード:
set db =server.createobject("ADODB.Connection")
db.open "TESTDB"
Set rcd = db.OpenSchema(adSchemaTables)
Do While Not rcd.EOF
If rcd("TABLE_TYPE") = "TABLE" Then
response.write rcd("TABLE_NAME")
End If
rcd.MoveNext
Loop

サーバー環境 win2kserver, IIS5.0

[3970] Re:ASPからアクセスのテーブル名を取得
投稿者:Yoshiさん 2004/01/11 22:28:21
それから、MSysObjectsテーブルを使用する場合、
システムテーブルとユーザーが作ったテーブルとの
判断が出来ないのですが、何か見分ける方法は
ありますでしょうか?

ご教授お願い致します。
Yoshi



[3971] ありがとうございました。
投稿者:Yoshiさん 2004/01/11 23:11:48
解決できました。
先ほど、ポストしたコードで間違いがありました。
”adschmetables”は、ASPでは値=20に変更しなければ
いけませんでした。



TreeBBS For ASP V.0.1.3
Program By YasNet