■No19499 (はまや さん) に返信
> ■No19493 (Megg さん) に返信
> 実は、SQL文は簡単な文法(SELECTとかUPDATE...)しか知らなくて、
なるほど。そういうことですか。
> 「ALTER TABLE ... ADD」というコマンドで列が追加できるようですが
> これだと元のテーブルに列が追加されてしまいますよね?
その通りです。そういうSQL文ですから。
私がイメージしていたのは、例えば元のテーブルが以下のような構成だとして、
TableA
======================
KeyColumn … char
Column2 … string
On_Off … int
======================
※今回、表示用と内部値が別である列が「on_off」という名の列とします。
このTableAに、一時列を加えた状態でSELECTします。
SELECT
KeyColumn
Column2
On_Off
CASE On_off WHEN 1 THEN 'オン' ELSE 'オフ'END AS ForDisplay ←名称用列
FROM Table_A
<<結果>>
KeyColumn Column2 On_Off ForDisplay
========== ======= ======= ===========
001 AAA 0 オフ
002 BBB 1 オン
003 CCC 1 オン
呼び出し時のみの列なので当然ながらUpdate等の更新、削除はできませんが、
他の列の値に基づいて変化させた値を入れるという場合には使える方法ではないでしょうか。
一時列であってもDataTable内の列として認識しますし、DataGridViewにもバインドできます。
> 取得したDataTable側に列を追加してからDataGridViewにバインドして
> ボタン押下のイベントで実データの値(0または1を反転)を変更し、
> 同じ行のボタン名称用の値も変更する。
ボタンを押下しようのない状態、即ち一番最初にデータを呼び出したときの
「ボタン名称用の値」についてはどう処理なさるお考えですか?
|