[ tufahija @ 18.12.2006. 16:28 ] @
Ljudi dao mi drug zadatak,radili na fakultetu,nije znao da ga uradi!I ja probah ali imam problema! Zadatak je sledeci: data je baza Student i u njoj tabela Student i Ocena.Poterbno je da se u jednoj transakciji u bazu ubace student(ciji se podaci inace unose u Textbox) i sve njegove ocene(koje se inace unose u DataGrid). Ovo da ubacim studenta kontam,ali ovaj deo sa ocenama ne radi.Tj ne znam kako treba da izgleda foreach petlja a ne mogu da skontam ni kako treba da mi izgleda INSERT naredba za ubacivanje ocena koje unesem u DataGrid!Evo kod,pa ako neko moze da ispravi bas bi mi znacilo,posto se celi dan mucim(mozda je glup al sta da radim..)! Hvala! Code: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.OleDb; namespace StudentOcena { public partial class StudOcena : Form { OleDbConnection konekcija; OleDbTransaction transakcija; DataTable dt; public StudOcena() { InitializeComponent(); string konekcioniString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\SiK\Desktop\Student.mdb;Persist Security Info=False"; konekcija = new OleDbConnection(konekcioniString); dt = new DataTable(); dt.Columns.Add("PredmetID"); dt.Columns.Add("Profesor"); dt.Columns.Add("Ocena"); dataGridView1.DataSource = dt; } private void btnSacuvaj_Click(object sender, EventArgs e) { string ubaciStud = "INSERT INTO Student VALUES('" + txtStudentID.Text+ "','"+txtIme.Text+"','"+txtPrezime.Text+"','"+BrInd.Text+"')"; string ubaciOcenu = "INSERT INTO Ocena VALUES('" + txtStudentID.Text +"','" +dt.Columns["PredmetID"].ToString() + "','" + dt.Columns["Profesor"].ToString() + "','" + dt.Columns["Ocena"].ToString() + "')"; transakcija = null; try { konekcija.Open(); transakcija = konekcija.BeginTransaction(); OleDbCommand komanda = new OleDbCommand(ubaciStud, konekcija, transakcija); komanda.ExecuteNonQuery(); foreach (DataRow red in //…)// ili je mozda problem ovdje u petlji??? { transakcija=konekcija.BeginTransaction(); komanda = new OleDbCommand(ubaciOenu, konekcija, transakcija); komanda.ExecuteNonQuery(); } transakcija.Commit(); } catch (Exception) { transakcija.Rollback(); } finally { konekcija.Close(); } } } } |