[c#] Problem z bazą danych- access
mam problem w szukaniu w bazie danych - baza Access, łaacze sie przez oleDB, nie chce mi szukac, co jest nie tak w tym kodzie ??
string wartosc = cmb1.Text.ToString();
string temat = txtSzukaj.Text.ToString();
Console.WriteLine(wartosc);
Console.WriteLine(temat);
czasopIDConnection.Close();
czasopIDConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source = " + Application.StartupPath + "\\..\\..\\czasop.mdb");
czasopIDConnection.Open();
czasopIDCommand = new OleDbCommand("SELECT * FROM Czaso WHERE "+wartosc+"='"+temat+"';" , czasopIDConnection);
czasopIDAdapter = new OleDbDataAdapter();
czasopIDAdapter.SelectCommand = czasopIDCommand;
czasopIDTable = new DataTable();
czasopIDAdapter.Fill(czasopIDTable);
stan("widok");
pokaz();
Odpowiedzi: 2
wartosc to jest wybor nazwy kolumny w ktorej ma szukac, czyli np. nazwa, cena, tematyka
a temat to to co ma tam byc czyli np 299
juz to rozwiazalem, dzieki
Co to znaczy to:
[quote]WHERE "+wartosc+"='"+temat+"';"[/quote]??
WHERE powinien wyglądać -= tak:
[code]czasopIDCommand = new OleDbCommand("SELECT * FROM Czaso WHERE temat='" + temat + "';" , czasopIDConnection);[/code]
poza tym naucz się korzystania z parametrów - uczynią one twój kod łatwiejszym, bezpieczniejszym i przejrzystszym.
pozdrawiaMM
Strona 1 / 1