- - PR -
データアダプタ使用後、DBに表ができる?
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-02-26 10:46
こんにちは。
VB.NETを使用してシステム開発を行っております。 OleDbDataAdapterを使用して、DataGridにOracleの表を 表示させようとしました。 最初はコーディングでやらないで、「データアダプタ構成ウィザード」を 使用して表示させました。 それ自体はうまくいったのですが、その後表示させたOracleの表の スキーマの持ってる表を見てみると、「MICROSOFTDTPROPERTIES」という 見たこともない表が出現していました。中身は何も入っていません。 これはいったいどういうことなのでしょうか? データアダプタを使用することによって無条件にこの 表ができてしまうのでしょうか? 何かわかることがありましたら、よろしくお願い致します。 |
|
投稿日時: 2003-02-26 13:49
こんにちは。
Visioをお使いになっていらっしゃいませんか?Visioからデータベーステーブルを作成したとき、そのような名前の表が2〜3個、できていたように思います。 |
|
投稿日時: 2003-02-26 14:54
早速のお返事、ありがとうございます。
いいえ、VB.NETを使用しています。 もう少し詳しく説明しますと、まずツールボックスの「OleDbDataAdapter」 をフォームにドラッグアンドドロップすると、自動的に「データアダプタ構成ウィザード」 が開始します。「新しい接続」ボタンをクリックし、「データリンクプロパティ」の 「プロバイダ」タグにて「Microsoft OLE DB Provider for Oracle」を選択、 「接続」タグにてOracleのサービス名とユーザ名、パスワードを入力して 接続テストをし、接続に成功したら、「クエリの種類の選択」にて「SQLステートメントの 使用」を選択して、完了します。 その後、「データ」メニューの「データセットの生成」を選択。 そこでデータセットの生成をします。そしてForm_Loadにて 「OleDbDataAdapter1.Fill(MyDataSet1)」を書き、DataGridの DataSourceを選んで、完成しました。 この説明でわかるでしょうか? 詳しくは、「VisualBasic.NETプログラミングマニュアル(技術評論社)」に 掲載されている通りにやってみたのですが、再度行ってみても やはりできてしまいます。 再度、よろしくお願い致します。 |
|
投稿日時: 2003-02-26 17:27
ORACLEが手元にないのでたぶんですが、それはdtpropertiesテーブルのORACLE版だと思います。dtpropertiesテーブルは、Microsoftの様々な開発ツールに付属しているVisual Database Tools(VDT)を使ってデータベースダイアグラムを作成するときに使われるテーブルです。びーちゃさんはダイアグラムを作られていないので、内容がないのだと思います。
おそらくVisioもVDTのコードを使っているのでしょう。ですからJittaさんのおっしゃっている現象も根っこは同じだと思います。VS.NETでも、サーバーエクスプローラやウィザードを使うと、VDTのコードが走って、DB上にテーブルを作るものと思われます。 ダイアグラムに関するデータを保存するだけですから、実運用環境では必要ないと思います。DROPしてしまってもいいのですが、開発中は結局何度も作られることになるでしょうから、放置しておけばいいと思います。 |
|
投稿日時: 2003-02-27 09:38
早速のお返事、ありがとうございました。
そうですか・・・ 使用しないのに勝手に作られる表っていうのも なんだか気持ち悪いですね・・・ 表の作られる表領域の初期サイズに依存しているので スキーマごとにアクセスすれば必ず作られてしまうのは あまりいただけないですね。 なので、DataGridを使用しない方法で検討してみようと 思います。 お手数おかけしました。ありがとうございました。 |
|
投稿日時: 2003-02-27 09:53
こんにちは。
私のところには、その表はないんですよ…。 私のところでは、何度もサーバの再インストールをしてまして(笑…ごとじゃないな)、初期の頃はVisioから表を作っていたので、できていました。ところが、表の"メンテナンス"ができるわけではない(というか、DBが悲惨になる)ことがわかり、Excelのマクロで表を作るSQLを生成するマクロを組み、メンテはオラクルのツールを使用するようになってから、Visioは使わなくなったんですね。その後、おそらく同様の方法にてOleDbDataAdapterは多用していますが、その表はありません。 |
|
投稿日時: 2003-02-27 10:56
あの、私の書き方が悪いのだと思いますが、VDTというのは開発ツールのことで、クラスライブラリとは無関係です。OleDbDataAdapterを利用するコードをいくら書いたところで、VDTを使っているわけではありませんし、DataGridを使う使わないも、dtpropertiesとは無関係ですよ。開発ツールで「データベースダイアグラム」を利用するかどうかの話です。実行コードとは無関係です。
|
|
投稿日時: 2003-02-28 10:50
詳細な説明、ありがとうございました。
多分今回の場合、「データアダプタ構成ウィザード」がVDTだったのですね。 だから「MICROSOFTDTPROPERTIES」という表ができたのだと思います。 コーディングでOracleにつないでSQL文発行すれば、DataGridを 使用してもその表はできないのだろうと推測しますので ヘルプを見ながらやってみようと思います。 どうもありがとうございました。 |