掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DataView.Sortについて教えて下さい (ID:145082)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
開発環境:WindowsXP,VB.NET2003,Access(mdb) どうもお世話になります。 前任者より引き継いだWinアプリを見直しております。 その中で表題の通りDataViewの操作について教えて頂きたい事があります。 まず、あるテーブルにFIELD01〜FIELD10があるとさせて下さい。 そのうちFIELD01〜05が主キーに設定されています。 この主キーに基づいてDataView.Sortを実行するという考えでいます。 mdb上での直接手打ちですが適当なテストデータを用意しました。 FIELD01 FIELD02 FIELD03 FIELD04 FIELD05 … ----------------------------------------------- 911075 001 0 35 001 911075 004 0 35 001 911075 004 0 35 002 911075 004 0 35 003 911075 007 0 35 001 911075 007 0 35 002 911075 007 0 35 003 911075 008 0 35 001 911075 010 0 35 001 911075 010 0 37 002 このデータをOleDbDataAdapter.FillでDataView.Tableにセットします。 手持ちの書籍などを参考にすると DataView.Sort = "単価,商品グループ DESC" など複数列を指定する事も可とありましたので DataView.Sort = "FIELD01,FIELD02,FIELD03,FIELD04,FIELD05 desc" という記述が出来ると判断したのですが思惑通りの結果になりませんでした。 上記のテストデータの並びのままでした。 例えば FIELD2 のみ限定で DataView.Sort = "FIELD02 desc" と記述した場合にはもちろん動きはあるのですが、それですと当然のように 911075 010 0 35 001 911075 010 0 37 002 911075 008 0 35 001 911075 007 0 35 001 911075 007 0 35 002 911075 007 0 35 003 911075 004 0 35 001 911075 004 0 35 002 911075 004 0 35 003 911075 001 0 35 001 のような結果となりFIELD03、FIELD04あたりは昇順のままです。 ちなみに実行結果はDebug.WriteLineやDataGrid.DataSourceに 実行後のDataViewをセットして確認しています。 ネット等で一通り調べたのですが、思った情報が得られず困っております。 アドバイス頂けると幸いです。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.