Radio Button i zapis do bazy danych

0

Witam,
tworzę dosyć rozbudowaną aplikację (windows forms), której celem jest współpraca z bazą danych SQL. Baza chodzi na serwerze SQL Server 2005. Mam problem z zapisaniem rekordów w bazie. Rekordy dotyczą np. produktów. Chodzi o to, że należy przy wprowadzaniu produktu zaznaczyć czy jest on dostępny (w sprzedaży)-w bazie ta informacja jest zapisywana przy pomocy zmiennej typu bit. Do tego celu wykorzystałam przyciski Radio Button (po zaznaczeniu przycisku TAK aplikacja powinna zapisywać w bazie wartość TRUE, po zaznaczeniu przycisku NIE - wartość w bazie powinna być ustawiona na FALSE). Niestety niezależnie od wyboru przycisku w bazie zawsze jest zapisywana wartość TRUE. Próbowałam różnych rzeczy, ale szczerze mówiąc specjalistą w programowaniu C# nie jestem więc bardzo proszę o pomoc.

0

w jaki sposob przekazujesz wartosc do bazy?
w jaki sposob odczytujesz ktory radio button jest zanzaczony?
w jaki sposob osadzone sa one na formie?

inaczej to wrozenie z fusow

0

No właśnie z przekazaniem wartości mam problem. Nie bardzo wiem jak się za to zabrać. Próbowałam jak poniżej:
private void Insert()
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Server = PC\SQLEXPRESS; Database = praca_1; Integrated Security = true";
string query = "INSERT Produkt (ID_produkt, Produkt, Dostep)VALUES (@ID_produkt, @Produkt, @Dostep)";
SqlCommand cd = new SqlCommand();
cd.Connection = cn;
cd.CommandText = query;
cd.Parameters.AddWithValue("@ID_produkt",txtKodProdukt.Text);
cd.Parameters.AddWithValue("@Produkt", txtProdukt.Text);
if (rbDostep.Checked)
cd.Parameters.Add("@Dostep", SqlDbType.Bit).Value = true;
if (rbNiedostep.Checked)
cd.Parameters.Add("@Dostep", SqlDbType.Bit).Value = false;
try
{
cn.Open();
cd.ExecuteNonQuery();
}
finally
{
cn.Close();
}
}
... i paru innych rzeczy, ale nic z tego. Oba przyciski Radio Buttons są umieszczone w bloku GroupBox o nazwie "Dostepny".

0

wyglada ok
ustaw sie breakpointem na
if (rbDostep.Checked) i zobacz czy jesli rbDostep nie jest zanzaczony to wchodzi do tego warunku czy do kolejnego
ustaw kolejny breakpoint tu cn.Open(); i przed wykonaniem query zobacz kolekcje parametrow i ich wartosci

moze przed twoja metoda Insert resetujesz ustawienia kontrolek?

0

Dzięki wielkie - już sobie poradziłam :-)

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