2011-12-12 5 views
0

は1つのテキストボックス、私は&がに割り当てるテキストボックスからテキストを取得しているがされています変数str1となります。データベースVB.net

この変数をデータベース(SELECT* FROM tbl1 WHERE Col1 = str1)と比較する必要があります。

このように書けますか?またはこれを行う他の方法がありますか?

答えて

3

Use parameters編集

Dim t As New DataTable() 
Using c As New SqlConnection(connectionString) 
     c.Open() 
     Using a As New SqlDataAdapter("SELECT* FROM tbl1 WHERE Col1 = @Col1", c) 
      'use the appropriate SqlDbType' 
      a.SelectCommand.Parameters.Add("@Col1", SqlDbType.NChar, 5, "Col1") 
      a.SelectCommand.Parameters("@Col1").Value = str1 
      a.Fill(t) 
     End Using 
End Using 
Return t 

prevent Sql-Injectionに:あなたはMS Accessの

Dim t as New DataTable 
Dim adapter As OleDbDataAdapter = New OleDbDataAdapter() 
Dim command As OleDbCommand 

Using connection As New OleDbConnection(connectionString) 
    ' Create the SelectCommand. 
    command = New OleDbCommand("SELECT * FROM Users " & _ 
     "WHERE UserName = ?", connection) 

    command.Parameters.Add("UserName", OleDbType.VarChar, 20).Value = userName 'userName is a string variable 

    adapter.SelectCommand = command 
    connection.Open() 
    adapter.Fill(t) 't is the DataTable that holds all columns of the User 
End Using 

http://msdn.microsoft.com/en-us/library/bbw6zyha.aspx

+0

卿を照会したいあなたのコメントによると、私は上記のコードを理解することはできません私はこの分野に慣れていないからです。私は3列(ID、ユーザー名とパスワード)を持つ1つのMSアクセスデータベーステーブルを持っています。それぞれのテキストボックスにユーザー名とパスワードを入力すると、特定のレコードのIDが取得されます。だからplsこれについて私を助ける – user993444

+0

@user:パラメータを使用してMS Accessデータベースを照会する方法の例を提供するために私の答えを編集しました。結果は、1つのレコードを持つDataTableです(このUserNameを持つユーザーが1人いる場合)。 –

+0

私の問題を解決しました。 – user993444

関連する問題