0

admin問題: と列を持つデータベースがidありusernameますpassword。これを、特定のユーザー名に対してid呼び出される変数に入れる必要があります。Dim ID

このクエリを実行すると:

adoRS.Source = "SELECT * FROM admin WHERE username= '"& username &"' AND password ='"& password &"' "

データベース内の特定の行と特定のid. したがって、問題はid、上記のクエリからそれを取得し、それを宣言された変数に入れる方法ですID

特定の解決策の 1 つは、while以下に示すようにループを使用することです。

 do
  col1 = adoRS.Fields("id")
  id = col1
  adoRS.MoveNext
Loop While Not adoRS.EOF

変数にはデータが 1 つしかないので、このプロセスcol1をスキップできればさらに便利です。do while問題は、データを取得し、そのデータをループ ステートメントidを使用せずに変数に入れる方法です。while

4

1 に答える 1

1

ADO レコードセットを使用する場合、値だけが必要な場合は、値を取得できます。

ID = adoRS.Fields("ID").Value

admin テーブルに同じ userName と Password を持つ行が複数ある場合、他の場所で問題が発生する可能性がありますが、ID を使用して行っていることをメソッドに送信するか、すべての ID をロードする必要があります。配列に。

数が多い場合は、getRows メソッドも役立つ場合があります。

(そして、実際には、ID だけが必要な場合は SELECT * を実行しないでください。SELECT ID FROM Admin は問題なく動作するはずです。また、その SQL 文字列を作成するときに USER と PASSWORD をサニタイズします。コマンド オブジェクトの使用を検討してください。パスワードを保存し、パスワードのハッシュを保存して、あなたの野菜を食べてください.)

于 2013-05-14T23:47:13.560 に答える