質問編集履歴
3
試したうえでの追記を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -120,5 +120,12 @@
|
|
120
120
|
**例1、例2、修正例1はダメ。修正例2はOK**でした。
|
121
121
|
修正例1は例1、例2と同じ結果になりました。
|
122
122
|
(ユーザテーブルの全件のカウントが返ってくる)
|
123
|
+
実行されたSQLを出力すると以下のようでした。
|
124
|
+
```SQL
|
125
|
+
SELECT COUNT(UserID) AS cnt FROM m_User WHERE UserID = '0001' AND pass= 'a' OR '1'='1'
|
126
|
+
```
|
123
127
|
それに対して修正例2は0件(該当なし)が返ってきました
|
124
|
-
|
128
|
+
実行されたSQLを出力すると以下のようでした。
|
129
|
+
```SQL
|
130
|
+
SELECT COUNT(UserID) AS cnt FROM m_User WHERE UserID = @ID AND pass= @PASSWORD
|
131
|
+
```
|
2
title
CHANGED
File without changes
|
body
CHANGED
@@ -109,4 +109,16 @@
|
|
109
109
|
0. 自分のコードは対策ができていないのではと思った。
|
110
110
|
0. 対策方法を考えたが、対策できているのかよくわからなくなった。
|
111
111
|
|
112
|
-
知識不足ゆえに質問も的を射ていないかもしれませんが、よろしくお願いします。
|
112
|
+
知識不足ゆえに質問も的を射ていないかもしれませんが、よろしくお願いします。
|
113
|
+
|
114
|
+
|
115
|
+
---
|
116
|
+
|
117
|
+
#試した上での追記
|
118
|
+
例1、例2、修正例1、修正例2全て試しました
|
119
|
+
結果として
|
120
|
+
**例1、例2、修正例1はダメ。修正例2はOK**でした。
|
121
|
+
修正例1は例1、例2と同じ結果になりました。
|
122
|
+
(ユーザテーブルの全件のカウントが返ってくる)
|
123
|
+
それに対して修正例2は0件(該当なし)が返ってきました
|
124
|
+
なんでそうなるのかはまだ掴みきれてないですが。。。
|
1
title
CHANGED
File without changes
|
body
CHANGED
@@ -76,7 +76,7 @@
|
|
76
76
|
```vb.net
|
77
77
|
Dim userid As String = tx_userid.Text
|
78
78
|
Dim pass As String = tx_pass.Text
|
79
|
-
Dim sqlstr As String = "SELECT COUNT(UserID) AS cnt FROM m_User WHERE UserID = @ID AND pass= @PASSWORD"
|
79
|
+
Dim sqlstr As String = "SELECT COUNT(UserID) AS cnt FROM m_User WHERE UserID = '@ID' AND pass= '@PASSWORD'"
|
80
80
|
sqlstr = sqlstr.Replace("@ID", userid)
|
81
81
|
sqlstr = sqlstr.Replace("@PASSWORD", pass)
|
82
82
|
'SQL文を実行するコードに続く
|