簡體   English   中英

在VB.NET的同一行中從第一列中搜索值,並從第二列中返回值

[英]Search for a value from column one, and return value from column two on the same row in VB.NET

因此,如果用戶輸入了他們的電子郵件,以防萬一忘記了密碼,那么該輸入將進入查詢中,在該查詢中,選擇“電子郵件”等於用戶輸入的電子郵件的位置,但是我還如何獲得密碼?第二列返回給用戶?

我正在使用的代碼是這樣的:

        Try
            If Not dbconn Is Nothing Then dbconn.Close()
            dbconn.ConnectionString = String.Format("server={0}; port=3306; user id={1}; password={2}; database={3}; pooling=true", server, userName, password, DatabaseName)

            dbconn.Open()

            query = String.Format("SELECT * FROM Testers WHERE Email='" + forgotEmail + "'")
            Try
               dbcomm = New MySqlCommand(query, dbconn)
               dbread = dbcomm.ExecuteReader()
               While dbread.Read()

               End While
               dbread.Close()

           Catch ex As Exception
               MsgBox(ex.ToString)
           End Try
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try

但是查詢點之后我該怎么辦?

更新 :由於提供的示例是關於密碼的,並且在密碼安全性方面應格外小心,因此我將以一些要考慮的要點開始對此(已接受)答案,其他用戶也評論過:


現在進行任務

在VB.NET的同一行中從第一列中搜索值,並從第二列中返回值

嘗試這個:

   String fieldval;

   While dbread.Read()

       fieldval = reader.GetString(reader.GetOrdinal("column2"))
       'Do something with fieldval

   End While

當然,在這種情況下,while循環僅應執行一次(即,只有一條包含該電子郵件地址的記錄)。

您還可以減少此:

query = String.Format("SELECT * FROM Testers WHERE Email='" + forgotEmail + "'")

query = String.Format("SELECT column2 FROM Testers WHERE Email='" + forgotEmail +"'")

其中column2是該字段的名稱。


當然,使用密碼時,應始終格外小心。 還可以查看Plutonix的評論!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM