- 締切済み
VB2008フォームのコンボボックスに、MSSQL2008のデータを表
VB2008フォームのコンボボックスに、MSSQL2008のデータを表示させたい いつもお世話になっております。 以前、VB6を少しかじり、 最近、サンプルコードなどを見よう見まねでvb2008&MSSQL2008について勉強しております。 VB2008で作成したフォームからMSSQLサーバ2008に接続し、 フォームをロードした際、フォーム上にあるコンボボックス(Combobox1)に サーバの指定したテーブル・フィールドの値を表示させたいのですが、 データベースへの接続はできたものの、コンボボックスに表示させる方法がわかりません。 テーブル:社員マスタ フィールド:社員番号 のデータをコンボボックスに呼び出すにはどう処理を加えればよいでしょうか? 今現在、作成中のコードが下記になります。 ご教授お願いします。 Private Sub Frmjob_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'リモート接続に伴うパスを格納 Dim St As String Dim Cn As New System.Data.SqlClient.SqlConnection Dim sqlInsert As New SqlClient.SqlCommand Dim SQL As System.Data.SqlClient.SqlCommand Dim ServerName As String = "192.XXX.X.XX" 'サーバーのIPアドレス Dim UserID As String = "sa" 'ユーザーID Dim Password As String = "bluebird" 'パスワード Dim DatabaseName As String = "testDB" '接続先データベース St = "Server=" & ServerName & ";" St &= "User ID=" & UserID & ";" St &= "Password=" & Password & ";" St &= "Initial Catalog=" & DatabaseName Cn.ConnectionString = St SQL = Cn.CreateCommand 'データベースに接続 Cn.Open() 'サーバから呼び出し SQL = New SqlClient.SqlCommand("SELECT 社員番号 FROM 社員マスタ"'), Cn) Me.ComboBox1.Items.Add(Item("JobCode")) Cn.Close() SQL.Dispose() Cn.Dispose() End Sub
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- AKARI0418
- ベストアンサー率67% (112/166)
Dim MyDataTable As New DataTable Dim MyDataAdapter As New SqlDataAdapter SQL = Cn.CreateCommand SQL.CommandText = "SELECT 社員番号 FROM 社員マスタ" MyDataAdapter.SelectCommand = SQL MyDataAdapter.Fill(MyDataTable) ComboBox1.ValueMember = "社員番号" ComboBox1.DisplayMember = "社員番号" ComboBox1.DataSource = MyDataTable 確認していないので動かないかもしれませんが、 こんな感じです