DOBON.NET DOBON.NETプログラミング掲示板過去ログ

データバインドしたコンボボックスの先頭行に行追加

環境/言語:[WindowsXP VB.NET]
分類:[.NET]

VB.NET超初心者です。
オラクルのデータをコンボボックスに表示し、先頭行に「選択してください」という行を入れたいと思い、あちこち調べましたが、うまく行きません。
現在は、空白行が先頭に表示されている状態です。
どなたかご教示お願いいたします。

Dim cmd As New OracleCommand
Dim da As New OracleDataAdapter
Dim ds As New DataSet

cmd.CommandText = "select shohin_name from shohin_table"
da.SelectCommand = cmd
da.Fill(ds, "shohin_table")

ShohinSelect.DataSource = ds.Tables("shohin_table")
ShohinSelect.DisplayMember = "shohin_name"
ShohinSelect.SelectedIndex = -1
> cmd.CommandText = "select shohin_name from shohin_table"

  このSELECT文を細工して・・・

  select '選択して下さい" as shohin_name
  union
  select shohin_name from shohin_table

  と言うふうにしたらダメでしょうか?
  昔、私がやったことある手なんですが・・・

※ DataSet には試してません。

以上。
オショウさん、ご教示ありがとうございます。

  select '選択して下さい" as shohin_name
  union
  select shohin_name from shohin_table

上記SQLで試してみましたら、上手くいきませんでしたので、unionやselectなどで
検索して調べましたところ、oracleの場合は、
"select shohin_name from shohin_table union select '選択してください' from dual order by ・・"
と、"from dual"を付け加えて書くのだそうです。

ちなみにACCESSの場合は、お教え頂いた方法でよいようです。
http://www.loadsystem.net/kowaza/index.html
「ユニオンクエリーを使ってコンボボックスのリストに (なし) を簡単に追加」

貴重なヒントを頂き、ありがとうございました。

>> cmd.CommandText = "select shohin_name from shohin_table"
>
>   このSELECT文を細工して・・・
>
>   select '選択して下さい" as shohin_name
>   union
>   select shohin_name from shohin_table
>
>   と言うふうにしたらダメでしょうか?
>   昔、私がやったことある手なんですが・・・
>
> ※ DataSet には試してません。
>
> 以上。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板