03.04. Upisivanje, menjanje i brisanje podataka iz baze
Drugi čas: Upisivanje i ažuriranje podataka u bazi (30 minuta)
1. Teorijski deo (10 minuta)
-
Za dodavanje, ažuriranje i brisanje podataka koristimo SQL naredbe INSERT, UPDATE i DELETE.
-
ExecuteNonQuery() metoda se koristi za izvršavanje ovih naredbi.
2. Praktični deo (20 minuta)
Primer: Upisivanje novog učenika u bazu
using System;
using System.Data.SqlClient;
class Program {
static void Main() {
string connectionString = "Server=localhost;Database=Skola;User Id=sa;Password=lozinka;";
using (SqlConnection konekcija = new SqlConnection(connectionString)) {
try {
konekcija.Open();
string upit = "INSERT INTO Ucenici (Ime, Prezime) VALUES ('Marko', 'Markovic')";
SqlCommand komanda = new SqlCommand(upit, konekcija);
int rezultat = komanda.ExecuteNonQuery();
Console.WriteLine("Broj dodatih redova: " + rezultat);
} catch (Exception ex) {
Console.WriteLine("Greška: " + ex.Message);
}
}
}
}
Primer: Ažuriranje podataka u bazi
string upit = "UPDATE Ucenici SET Prezime = 'Jovanovic' WHERE Ime = 'Marko'";
SqlCommand komanda = new SqlCommand(upit, konekcija);
int rezultat = komanda.ExecuteNonQuery();
Console.WriteLine("Broj izmenjenih redova: " + rezultat);
Vežba:
-
Napraviti program koji omogućava korisniku da unese ime i prezime učenika koji se dodaje u bazu.
-
Izmeniti program tako da korisnik može uneti ime učenika čije prezime želi da promeni.
Treći čas: Brisanje podataka iz baze i završna vežba (30 minuta)
1. Teorijski deo (10 minuta)
-
DELETE naredba se koristi za brisanje podataka iz baze.
-
Potrebno je biti pažljiv pri brisanju kako ne bismo uklonili sve podatke slučajno.
2. Praktični deo (20 minuta)
Primer: Brisanje učenika iz baze
using System;
using System.Data.SqlClient;
class Program {
static void Main() {
string connectionString = "Server=localhost;Database=Skola;User Id=sa;Password=lozinka;";
using (SqlConnection konekcija = new SqlConnection(connectionString)) {
try {
konekcija.Open();
string upit = "DELETE FROM Ucenici WHERE Ime = 'Marko'";
SqlCommand komanda = new SqlCommand(upit, konekcija);
int rezultat = komanda.ExecuteNonQuery();
Console.WriteLine("Broj obrisanih redova: " + rezultat);
} catch (Exception ex) {
Console.WriteLine("Greška: " + ex.Message);
}
}
}
}
Vežba:
-
Napraviti program koji omogućava korisniku da unese ime učenika koji će biti obrisan iz baze.
-
Dodati potvrdu pre brisanja kako bi korisnik mogao da odustane od operacije.
Za domaći zadatak:
-
Napraviti aplikaciju sa menijem koji korisniku omogućava izbor opcija za prikaz, dodavanje, izmenu i brisanje učenika iz baze.
4. Zaključak
-
- ExecuteNonQuery() se koristi za izvršavanje INSERT, UPDATE i DELETE upita.
- Potrebno je zatvoriti konekciju sa bazom nakon korišćenja (ako se ne koristi using).