problem z pobraniem danych z SQL

0

Witam,

Na początku zaznczę, że w dziedzinie C# jestem na poziomie "początkujący".

W Microsoft Visual C# 2010 Express Utworzyłem aplikację okienkową oraz bazę danych SQL (.mdf). Próbuję pobrać dane z tabeli o nazwie "logowanie", kolumna "hasło", żeby móc je porównać z hasłem jakie użytkownik wpisze do texbox. Mój kod wygląda następująco:

 
SqlDataAdapter DA_haslo = new SqlDataAdapter("SELECT haslo FROM logowanie WHERE (login LIKE '%' + @textBox_login + '%')", logowanie);
                    
DataSet dataset_haslo = new DataSet();
dataset_haslo.Tables.Add("logowanie");
DA_haslo.Fill(dataset_haslo, "logowanie");

foreach (DataRow row in dataset_haslo.Tables[0].Rows)
{
if (row.ToString() == textBox.Text)
{
....
}                
}

Debugowanie kończy się w tym miejscu:

 
DA_aktywny.Fill(dataset_aktywny, "logowanie");

Komunikatem o następującej treści "Must declare the scalar variable "@textBox_login"."

Proszę o pomoc w znalezieniu tego diabelnego (bo pewnie małego) błędu. Z górzy dziękuję za wszystkie sugestie.

0

A zrób tak:

"SELECT haslo FROM logowanie WHERE login ='" + textBox_login + "'";
0

Dziękuję za podpowiedź,

już zabieram się do poprawiania.

0

Ja myślę że tak:

string.Format("SELECT haslo FROM logowanie WHERE login = '{0}'", textBox_login.Text);
0

jeszcze poczytaj sobie o sql injection, bo za pomocą tak napisanego kodu nawet początkujący hacker zrobi, co będzie chciał z bazą danych, włącznie z dropem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1