0
私はパラメータに値を渡そうとしましたが、返すものは何もありません。パラメータなしで単純なsqlコマンドを使用すると、データベースからすべてのデータを取得できます。あなたは、文字列@criteria
を検索しているどのようにしてsqldataadapterにパラメータを渡すことができますか?
Public Shared Function RetrieveData() As DataTable
Connection.Open()
Try
sql = "SELECT DEP_ID AS CODE, DEP_NAME AS DEPARTMENT FROM DEPART_TBL WHERE " & FieldName & " LIKE N'%@criteria%'"
da = New SqlDataAdapter
da.SelectCommand = New SqlCommand(sql, Connection.SQLConnection)
da.SelectCommand.Parameters.Add("@criteria", SqlDbType.NChar)
da.SelectCommand.Parameters("@criteria").Value = "KCL"
'da.SelectCommand.Parameters.Add("@criteria", SqlDbType.NChar, 10, "DEP_ID")
'Message.ShowInfo(da.SelectCommand.CommandText.ToString)
'Exit Function
dt = New DataTable
da.Fill(dt)
Catch ex As Exception
Message.ShowError(ex.Message)
End Try
da.Dispose()
Connection.Close()
Return dt
End Function
qu estionですが、コマンドに変数を追加するのと同時に変数に値を代入することもできます。また、文字列パラメータを渡すときに長さを指定することもお勧めします。つまり、あなたのコードは、 'da.SelectCommand.Parameters.Add(" @ criteria "、SqlDbType.NChar、50).Value =" KCL "' – GarethD