エラーをしようとしたクエリがあるが含まれている必要があり、オペランドましエラーですかなり明白です:唯一の単一の列が決定するためにIN
またはNOT IN
句の通過を許可しますその列に割り当てられた関連値。
あなたはこの例のようにサブクエリからの単一の列を提供することで、クエリを修正することができます。代わりにパラメータ化クエリのバージョンを使用し、むしろ値の文字列を連結より:
Dim Query As String = "SELECT admin.user, admin.pass FROM admin WHERE user = @username AND pass = @password OR user [NOT] IN (SELECT users.user FROM users WHERE user = @username AND pass = @password)"
同様の問題を
Dim Query As String = "SELECT admin.user, admin.pass FROM admin WHERE user = '" & username.Text & _
"' AND pass = '" & password.Text & _
"' OR user [NOT] IN (SELECT users.user FROM users WHERE user = '" & username.Text & _
"' AND pass = '" & password.Text & "')"
NBを:
Operand Should Contain 1 Column - MySQL NOT IN
エラー:operand should co ntain 1 column –
**警告**:[SQLインジェクションのバグ](http://bobby-tables.com)については、このコードが一杯になっているので学びましょう。 – tadman