Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
複数条件のプログラムを作りたい
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=15515#CommentId37666
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
社会人
 (社会人)
投稿日時
2014/2/7 10:25:14
Private Sub btnGo_Click(sender As System.Object, e As System.EventArgs) Handles btnGo.Click
Dim wOK As Boolean
Dim cnstr As String = "Data Source=データベース;Initial Catalog=データベース;Integrated Security=True"
Dim sql As String
sql = "SELECT * "
sql += "FROM 生産者"
Dim dt As New DataTable
If TextBox1.Text.Length > 0 Then
wOK = True
If あいまい検索1A.Checked Then
sql += " WHERE (生産者番号 Like '%" & TextBox1.Text.Trim & "%')"
Else
sql += " WHERE (生産者番号 Like '" & TextBox1.Text.Trim & "%')"
End If
End If
If TextBox2.Text.Length > 0 Then
If wOK = True Then
sql += " AND "
Else
sql += " WHERE "
End If
sql += " (生産者名 Like '"
If あいまい検索2B.Checked Then
sql += "%"
End If
sql += TextBox2.Text.Trim & "%')"
wOK = True
End If
If TextBox3.Text.Length > 0 Then
If wOK = True Then
sql += " AND "
Else
sql += " WHERE "
End If
sql += " (Rank Like '"
If あいまい検索3B.Checked Then
sql += "%"
End If
sql += TextBox3.Text.Trim & "%')"
wOK = True
End If
Dim da As New SqlDataAdapter(sql, cnstr)
Try
da.Fill(dt)
DataGridView1.DataSource = dt 'DataGridview1にdtのデータを表示する
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
End Class
anさんの指摘通りにANDに変更したら欲しい結果になりました。
段々と完成形に近づいていますが、もう少し皆さんの協力をお願いします。
外交的な話は外向的な話の間違いです。
生産者番号を検索する際に、00~10のデータ11件欲しい場合など範囲指定検索のコードを考えているんですが思いつきません。
自分なりに考え、範囲指定検索する箇所にはTextBoxを二つ置き、両方に記入があった場合のみ実行するコード作った結果はエラーで弾かれました。
If TextBox1.Text.Length > 0 And TextBox2.Text.Length > 0 Then
wOK = True
If RadioB.Checked Then
sql += " AND "
Else
sql += " WERE "
End If
End If
弾かれたというより、どうすれば良いのか分からないというのが現状です。
ネットとかでも調べても中々欲しい情報が見つからないので宜しくお願いします