文字列 (ネットワーク ID) を比較しようとしていて、SQL Like コマンドを使用して、影響を受けた行の数を返します (ユーザー名が見つかったかどうかにかかわらず)。ただし、コードでは常に " -1 " を取得しています。理由が見つかりません。ユーザー名は正しく、SQL Server Mgt でクエリを実行すると SQL テーブルで見つかります。
Try
Dim Con As New SqlConnection
Con.ConnectionString = "Data Source=WCRDUSMJEMPR9\SQLEXPRESS;Initial Catalog=MicroDB;Integrated Security=True"
Con.Open()
Dim SQL2 As String
SQL2 = "SELECT * from MicroDB_Users WHERE Users LIKE '+@Usercheck+'"
Dim cmd2 As New SqlCommand(SQL2, Con)
cmd2.Parameters.AddWithValue("@Usercheck", TextBox1.Text)
Dim obj2 = cmd2.ExecuteNonQuery
Con.Close()
If obj2 > 0 Then
MsgBox(obj2)
Response.Redirect("~\ControlCharts\AddData_Control.aspx")
Label7_Control.Visible = False
Else
MsgBox(obj2)
Label7_Control.Text = ("You are not authorized to Add Data")
Label7_Control.Visible = True
End If
Catch ex As Exception
MsgBox(Err.Description)
ご覧のとおり、IF を使用して、ユーザーが見つかった (1 行が影響を受ける) か、見つからなかった (0 行が影響を受ける) かを比較しています。