VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2004/06/21(Mon) 16:29
投稿者そま太郎
Eメール
URL
タイトルVB→Access フィールドの順番が変わってしまう

お世話になっております.

原因はおよそ分かったものの、対応方法がさっぱりという事態に
直面してしまいました.ご存知の方がおられましたら助言頂ければ
ありがたいです。(一応思いつくキーワードで検索したのですが、
過去のログと重複があったらすみません)

1. ADOX (Microsoft ADO Extensions for DDL and Security) を用いて
  新規にAccessDBを作成し、その中にテーブルを作成した.  
  →ADOX.CatalogオブジェクトのCreateメソッド、および
   ADOX.CatalogオブジェクトのTablesコレクションのAppendメソッドを利用
  ★フィールドの指定は .Columns.Append "フィールド名", データ型 という書式で.

2. VBのMSHFlexGridコントロール上に表示しているデータを、上で作成した
  ファイルに書き出した.
  →ADODB.Connectionオブジェクトで接続した後で、
   RecordsetオブジェクトのAddNewメソッドとUpdateメソッドを利用

(問題)
 新しくできたファイルをAccessで開くと、元のデータとフィールド(列)の順番が
 変わってしまいました。フィールド名は日本語なので、おそらく文字コードの
 大小関係を内部的に比較して、それに基づいてソートをかけたのだと思い、
 フィールド名の先頭に新たに数字を追加してテストした所、やはり昇順に並び
 かわりました.

(望ましい状態)
 出力先のファイルにおけるフィールドの順番を、任意に指定したい.

環境: WindowsXP, VB6.0, ADO, Microsoft.Jet.OLEDB.3.51,


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -