- ベストアンサー
データベース操作(DAO)でのフィールド追加について
データベース(Access)のあるテーブルのフィールドをVBのコード(プログラム)から追加したのですが、現在Appendとかいうメソッドを使ってテーブルの中にあるフィールドの一番最後尾に追加するということはできました。 しかし、好きな場所(前から2番目とか…)に挿入することができません。こんなことって可能なのでしょうか?? データベースをコードから操作する上ではフィールドがどの位置にあっても関係ないのですが、メンテナンスなども考えてできればやりたいのですが、どなたか分かる方おられたら教えてもらえませんか?? (操作方法はDAOです) どうぞよろしくお願いしますm(__)m
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ごめんなさい、任意の位置へ・・っていうのを読み飛ばしていたようです。 フィルードを追加してあげた後に、 全フィールドのOrdinalPositionプロパティを変更してあげることってできないでしょうか? http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q249/6/82.asp&NoWebContent=1 また、的をはずしそうで怖い・・・。 これがダメだったら、無理なのかもしれません。
その他の回答 (3)
- PAPA0427
- ベストアンサー率22% (559/2488)
VBAで任意の場所に追加はできません。 >ポイントはこちら側が保守(メンテナンス)をするときなんですよね という事でしたら、メンテの時に選択クエリを作って、それでメンテされれば如何でしょう。表示の順番は好きなように変えられますが。 または、新しいテーブルを作成し、元情報を新しいテーブルにコピーし、元テーブル削除し、新しいテーブルをリネームするとかですね。(う~ん、かったるいかも)
お礼
回答ありがとうございます! やはりそうなりますよね、私も今まではPAPA0427さんの言われた方法でやっていました。 今回方法を一新しようと思いチャレンジしてみました。
- imogasi
- ベストアンサー率27% (4737/17069)
VB(アクセスVBA?)のプログラムでフィールドを追加した後、手操作でフィールドの位置を簡単に移動できますが http://so-net.mougb.net/lesson/acs_l/alesson10.htm テーブルの例。「デザインビューでフィールドを移動すると、そのフィールドに入力されているデータも移動します。」 これもVBAでやらないといけないと言うことですか。
お礼
回答ありがとうございます。 そうなんです、Accessの機能を使えば簡単にできることは知っています。ただAccessにもVBにも全く知識のない人達が使うとなったらどうでしょう? こちら側が使う人に意識させないでフィールドが勝手に追加されているようにプログラムする必要がありますよね、ただ、この段階では「だったら別に一番最後尾に追加されてもかまわないのでは…?」ってなってしまいますが、ポイントはこちら側が保守(メンテナンス)をするときなんですよね…ホントにまったくわがままな意見なのです…ごめんなさいm(__)m。 でも回答ホントに嬉しかったですありがとうございました!!
- rara_sun
- ベストアンサー率50% (271/539)
AccessとかDAOについては、何の知識もないのですが、 興味があったので調べてみました。 調査時間5分・・ もしかしたら的外れな回答になるかもしれませんが、 そのときはご容赦を・・・ http://www.microsoft.com/japan/developer/library/dao360/daobjtabledef.htm http://www.ruriplus.com/msaccess/Exp/exp0140.htm http://homepage1.nifty.com/MADIA/vb/vb_bbs/200304_03040003.html http://www.athomejp.com/goldfish/mfc/ado/addnew.html
お礼
早速の回答ありがとうございます。 URL参照してみました!しかしどれも追加はできているものの、特定の場所ということにかんしてはふれていなかったです…。やはりできないことなのでしょうか?
お礼
回答ありがとうございました!! 試してみたところ見事にできました!!! バッチリ的にヒットしてましたよ! 本当にありがとうございましたm(__)m