- PR -

DataGridに表示した特定のフィールドのデータを変換したい VB.NET

投稿者投稿内容
co.jp
常連さん
会議室デビュー日: 2004/03/19
投稿数: 20
投稿日時: 2005-01-07 13:16
禰宜さん
Dim ds As New DataSet
OleDbDataAdapter1.Fill(ds)
としても改善しませんでした。
SELECT文はいろいろ試しましたが、エラーになります。
コード以外の所で引っかかっているような気が致します。
_______________________________________________________________________________________
Jittaさん
データベースはACCESS97を使用しております。

SELECT文で変更したものを取り出す方法(SELECT CASE WHEN A=1 THEN '合格' WHEN A=2 THEN '不合格' ELSE '保留' END AS ADash, ...)は通りませんでした。

Datasetの内容を書き換える方法(Dataset11.Tables("X").Columns("ADash").Expression = "IIF(A=1, '合格', IIF(A=2, '不合格', '保留'))" )は通りました。

SELECT文で変更したものが取り出せないのは、使用しているデータベースが影響しているのでしょうか?
しかしながら、Datasetの内容を書き換える事に成功しましたので、こちらの手法で対応致します。
_____________________________________________________________________________________

Jittaさん、禰宜さんアドバイス頂きありがとうございました。
細かい修正点はありますが、本来の目的は達成できました。

以下、コード

OleDbDataAdapter1.SelectCommand.CommandText = "select フィールド1, フィールド2, A WHERE "フィールド1 = '" + TextBox3.Text + "'"
OleDbDataAdapter1.Fill(Dataset11)

col = Dataset11.Tables("X").Columns.Add("A2")
Dataset11.Tables("X").Columns("A2").Expression = "iif(A=1, '合格', IIF(A=2, '不合格', '保留'))"
kanai
ベテラン
会議室デビュー日: 2004/09/13
投稿数: 98
投稿日時: 2005-01-07 13:41
AccessのSQLではCASE文は使用できなかったように思います。
CASE文の箇所をIIF文で書き換えればSELECT文で表示を変換する方法でも通ると思います。

スキルアップ/キャリアアップ(JOB@IT)