13
Project IB_JEP Project IB_JEP - - 41148 41148 - - 2006 (RS) 2006 (RS) Elektronski Elektronski fakultet fakultet Univerzitet u Ni Univerzitet u Ni š š u u ZADATAK: Izrada desktop aplikacije korišćenjem ADO.NET-a i programskog jezika C# KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović

KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Project IB_JEPProject IB_JEP--4114841148--2006 (RS)2006 (RS)

ElektronskiElektronski fakultetfakultetUniverzitet u NiUniverzitet u Niššuu

ZADATAK: Izrada desktop aplikacije korišćenjem ADO.NET-a i programskog jezika C#

KURS:BAZE PODATAKA

Dipl.inž. Miloš Bogdanović

Page 2: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

ADO.NET

Direktan pristup podacima korišćenjem ADO.NET-aRedosled operacija:

Kreirati Connection, Command i DataReader objekteOtvoriti konekcijuKoristiti DataReader za čitanje podataka iz baze podatakaZatvoriti konekciju

Korišćenje sloja sa raskinutom vezomDataSetDataAdapter

Page 3: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Zadatak

Korišćenjem programskog jezika C#, ADO.NET-a i baze podataka SKOLA kreirati aplikaciju sa sledećim karakteristikama:

Aplikacija poseduje ComboBox kontrolu comboBox1 koji prikazuje sve predmete iz tabele PREDMET.

Aplikacija poseduje ComboBox kontrolu comboBox2 koji prikazuje sve učenike iz tabele UCENIK.

Dugme Prikaži ocene i izostanke u okviru ListBox kontrole prikazuje sve ocene za izabranog učenika i izabrani predmet. Istovremeno se u okviru DataGridView kontrole prikazuju i izostanci odabranog učenika sa odabranog predmeta.

NAPOMENA: Projekat za kreiranje aplikacije preuzeti sa adrese:http://kursevi.elfak.rs/course/view.php?id=3

Page 4: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Izgled aplikacije

Page 5: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Inicijalno popunjavanje kontrola podacimapublic partial class Form1 : Form{

private ArrayList listaMbrUcenika;public Form1(){

InitializeComponent();}

private void Form1_Load(object sender, EventArgs e){

listaMbrUcenika = new ArrayList();PopuniPredmetComboBox();PopuniUcenikComboBox();

}...

Page 6: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Popunjavanje comboBox-a koji prikazuje predmete

OleDbConnection conn = new OleDbConnection();

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\SKOLA.mdb";

String strSQL = "Select * from PREDMET";

OleDbCommand comm = new OleDbCommand(strSQL, conn);

OleDbDataAdapter adapter = new OleDbDataAdapter(comm);

DataSet ds = new DataSet();

try{

conn.Open();

adapter.Fill(ds, "Predmet");

conn.Close();

comboBox1.DataSource = ds.Tables["Predmet"];

comboBox1.DisplayMember = "Naziv";

comboBox1.ValueMember = "Sifra";

comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;}

catch (Exception exc){

//obrada izuzetka}

Page 7: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Popunjavanje comboBox-a koji prikazuje učenikeOleDbConnection conn = new OleDbConnection();

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\SKOLA.mdb";

String strSQL = "Select * from UCENIK";

OleDbCommand comm = new OleDbCommand(strSQL, conn);

try{

conn.Open();

OleDbDataReader reader = comm.ExecuteReader();

while (reader.Read()){

comboBox2.Items.Add(reader[1].ToString() + " " + reader[3].ToString());listaMbrUcenika.Add(reader[0].ToString());

}

if (comboBox2.Items.Count > 0){

comboBox2.SelectedIndex = 0;}

conn.Close();}catch (Exception exc){

//obrada izuzetka}

Page 8: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Dugme za prikaz ocena i izostanaka

protected void prikaziOceneIIzostanke_Click(object sender, EventArgs ea){

prikaziOcene();prikaziIzostanke();

}

Page 9: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Prikazivanje ocena – I deo

private void prikaziOcene(){

OleDbConnection conn = new OleDbConnection();

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\SKOLA.mdb";

OleDbParameter param = new OleDbParameter();

param.ParameterName = "@sifraPredmeta";

param.Value = comboBox1.SelectedValue.ToString();

param.OleDbType = OleDbType.LongVarChar;

OleDbParameter param2 = new OleDbParameter();

param2.ParameterName = "@mbrUcenika";

param2.Value = listaMbrUcenika[comboBox2.SelectedIndex];

param2.OleDbType = OleDbType.Integer;

String strSQL = "Select * from OCENA where Sifra=@sifraPredmeta and Mbr=@mbrUcenika";

OleDbCommand comm = new OleDbCommand(strSQL, conn);

comm.Parameters.Add(param);

comm.Parameters.Add(param2);...

Page 10: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Prikazivanje ocena – II deo

OleDbDataAdapter adapter = new OleDbDataAdapter(comm);

DataSet ds = new DataSet();

try{

conn.Open();

adapter.Fill(ds, "Ocene");

conn.Close();

listBox1.DataSource = ds.Tables["Ocene"];

listBox1.DisplayMember = "Ocena";

listBox1.ValueMember = "Id";}catch (Exception exc){

//obrada izuzetka}

Page 11: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Prikaz izostanaka – I deo

private void prikaziIzostanke(){

OleDbConnection conn = new OleDbConnection();

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\SKOLA.mdb";

//izostanci

OleDbParameter param = new OleDbParameter();

param.ParameterName = "@mbrUcenika";

param.Value = listaMbrUcenika[comboBox2.SelectedIndex];

param.OleDbType = OleDbType.Integer;

String strSQL = "Select * from IZOSTANAK where Mbr=@mbrUcenika";

OleDbCommand comm = new OleDbCommand(strSQL, conn);

comm.Parameters.Add(param);.....

Page 12: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

Prikaz izostanaka – II deo

OleDbDataAdapter adapter = new OleDbDataAdapter(comm);

DataSet ds = new DataSet();

try{

conn.Open();

adapter.Fill(ds, "Izostanak");

conn.Close();

dataGridView1.DataSource = ds.Tables["Izostanak"];

dataGridView1.AllowUserToAddRows = false;

dataGridView1.AllowUserToDeleteRows = false;}catch (Exception exc){

//obrada izuzetka}

Page 13: KURS - midusware.files.wordpress.com€¦ · KURS: BAZE PODATAKA Dipl.inž. Miloš Bogdanović . ADO.NET Direktan pristup podacima korišćenjem ADO.NET-a Redosled operacija: Kreirati

BAZE PODATAKAKontakt informacije