Solved

How can I make a recursive query?

Posted on 2008-06-11
3
297 Views
Last Modified: 2013-11-26
Hello everybody,

I finally could populate a combobox in VB.NET with data grabbed from a remote MySQL DB. The problem is that that data, only fills the combobox but doesn't store the query results in an array or anything. What I need to do now, is to validate the selected user with the DB, while making the password MD5 hashed. This MD5 encrypt is easy, but I don't know why I can't make the second query to fetch the password for the selected user in the combobox (making a last name, first name comparation).

Here's my code:
Private Sub comUsername_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles comUsername.TextChanged

        If comUsername.Text <> "" Then

            txtPassword.Enabled = True

            Dim user_full_name As String
 

            user_full_name = comUsername.Text
 

            SQL2 = "SELECT user_id FROM users WHERE 'user_last_name, user_name' = @user_full_name"

            myCommand.Connection = conn

            myCommand.CommandText = SQL2
 

            myAdapter.SelectCommand = myCommand

            myAdapter.Fill(myData)
 

            oReader = myCommand.ExecuteReader
 

            selected_user_id = oReader("user_id")
 

            MsgBox(selected_user_id)
 

            oReader.Close()
 

        Else

            txtPassword.Text = ""

            txtPassword.Enabled = False

        End If

    End Sub

Open in new window

0
Comment
Question by:Caracena
  • 2
3 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 250 total points
ID: 21771342
>            SQL2 = "SELECT user_id FROM users WHERE 'user_last_name, user_name' = @user_full_name"

you might look for the CONCAT function:
            SQL2 = "SELECT user_id FROM users WHERE CONCAT(user_last_name, ' ' , user_name) = @user_full_name"

assuming lastname and username as separated by a space.
0
 
LVL 6

Author Comment

by:Caracena
ID: 21771398
Thanks! It was that. it also had a comma (plus space). Another thing that I found is how to propperly place the variable in the SELECT statement:

SQL2 = "SELECT * FROM users WHERE concat(user_last_name,', ',user_name) = '" & comUsername.Text & "'"

Thanks agian!
0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 21771446
>Another thing that I found is how to propperly place the variable in the SELECT statement:
using that method is NOT properly done.
use either the MySqlParameter, or at least handle the single quote "issue":

SQL2 = "SELECT * FROM users WHERE concat(user_last_name,', ',user_name) = '" & comUsername.Text.Replace("'", "''") & "'"

using the MySqlParameter:
http://dotnetnuke.adefwebserver.com/MySQL/MySql5sample/tabid/289/Default.aspx
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

In my previous two articles we discussed Binary Serialization (http://www.experts-exchange.com/A_4362.html) and XML Serialization (http://www.experts-exchange.com/A_4425.html). In this article we will try to know more about SOAP (Simple Object Acces…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now