出来るのだASP Q&A掲示板(過去LOG)
訪問数 52046
昨日 889
今日 776 【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。 |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
[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 |