Code:
private void NapuniBazu()
{
string konekcioniString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\bazaweldgas.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
SqlConnection konekcija = new SqlConnection(konekcioniString);
float kolicina = Convert.ToSingle(txtKol.Text) ;
int sifra = Convert.ToInt32(txtSP.Text);
string naziv = Convert.ToString(txtNazivP.Text);
DateTime datum = Convert.ToDateTime(parent.dtpDatumFK.Text);
int rezultat = 0;
using (SqlCommand komanda = new SqlCommand())
{
komanda.Connection = konekcija;
string updateString = "UPDATE VELNOVO SET KOLICINA=@kolicina WHERE SIFRAPROIZVODA = @sifraproizvoda";
string insertString = "INSERT INTO VELNOVO(SIFRAPROIZVODA, NAZIVPROIZVODA, KOLICINA, DATUMFK) VALUES (@sifraproizvoda,@nazivproizvoda, @kolicina, @datumfk)";
komanda.CommandText = updateString;
//kolicina = Convert.ToSingle(dsVeleKup1.Tables["VELNOVO"].Rows["KOLICINA"]) - kolicina;
komanda.Parameters.AddWithValue("@kolicina", kolicina);
komanda.Parameters.AddWithValue("@sifraproizvoda", sifra);
try
{
konekcija.Open();
rezultat = komanda.ExecuteNonQuery();
if (rezultat == 0)
{
komanda.CommandText = insertString;
kolicina = 0 - kolicina;
komanda.Parameters.Clear();
komanda.Parameters.AddWithValue("@kolicina", kolicina);
komanda.Parameters.AddWithValue("@sifraproizvoda", sifra);
komanda.Parameters.AddWithValue("@nazivproizvoda", naziv);
komanda.Parameters.AddWithValue("@datumfk", datum);
komanda.ExecuteNonQuery();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
Sve mi radi kako sam zamislila, hvala ti puno! Jedino ako mozes da mi kazes kako da u ovom kodu sto sam stavila, kada vrsim UPDATE, da mi od kolicine iz baze oduzme novu kolicinu koju sam dodala, a ne da zamenjuje kako si ti uradio.
Ja sam stavila ovo, ali naravno nece da radi.
kolicina = Convert.ToSingle(dsVeleKup1.Tables["VELNOVO"].Rows["KOLICINA"]) - kolicina;