Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 13 odgovora
  • 2.657 pregleda

Najnovija ↓

iz datagridview-a u dataset 01.11.2008. u 20:46 · pre 219 meseci #1
Ovako
Na formi imam daatagridview koji nije povezan s datasetom...
imam button add kojim ubacujem podatke u datagrid
i button spremi
Na formi se također nalazi oledbdataadapter koji je povezan s access bazom i generirani dataset iz dataadaptera

e sad kad ja popunim podatke u datagridu kako da ih proslijedim u dataset i da ih on pospremi u bazu??

Puno hvala unaprijed

radim u Visual Basicu .net 2008
Re: iz datagridview-a u dataset 01.11.2008. u 23:00 · pre 219 meseci #2
Ukoliko si vec generisao update,insert i delete komande nad OleDbDataAdapter-om bilo rucno bilo preko klase OleDbCommandBuilder klase dovoljno je da kada pozoves komandu OleDbDataAdapter.Update(tvojDataSet) i on ce automatski snimiti sve promene u bazu.
Re: iz datagridview-a u dataset 02.11.2008. u 19:46 · pre 219 meseci
izmenjeno 1 put, poslednji put marko_jan 02.11.2008. u 20:17
  1. marko_jan02.11.2008. u 20:17zapis iz teksta poruke
#3
Hmmm vidim da nisi dobro razumio..

Al evo objasnit ču odprilike šta treba da se radi ....
Znači imama DataGrid koji NIJE povezan s Datasetom.. e sad kad ga ja napunim podacima da on te podatke samo doda u bazu...
Neznam kako da te podatke iz datagrid-a prosijedim u dataset.. tj da dataset nadopunim podacima koji se nalaze u datagrid-u .. jer u bazi već postoje neki podaci i da se pomoću adaptera pohrane u bazu.
Re: iz datagridview-a u dataset 02.11.2008. u 21:33 · pre 219 meseci #4
Ok. Sada se malo bolje razumemo.

A zasto ne prolazis red po red kroz datagridview i ne dodajes te podatke direktno u dataSet ??

Otprilike:


Code:

foreach(DataGridViewRow dgvr in dataGridView1.Rows)
{

ds.Tables["TabelaUKojuUbacujes"].Rows.Add(new object[] { dgvr.Cells[0].Value,dgvr.Cells[1],....});

}



I sada samo pozoves Update() metod.
Re: iz datagridview-a u dataset 02.11.2008. u 23:15 · pre 219 meseci
izmenjeno 1 put, poslednji put marko_jan 02.11.2008. u 23:49
  1. marko_jan02.11.2008. u 23:49zapis iz teksta poruke
#5
Hvala ti ali možeš li to napisati za Visual Basic jer u C# ne radim jer ga ne kužim nikako....

Hvala ti unaprijed

For Each(DataGridViewRow dgr in dgr.Rows

DataSet11.Tables("Tabel1").Rows.Add(New Object() {dgr.Cells(0).Value, dgr.Cells(1)})

Next

u for each mi javlja error .. dgr je datagrid
Re: iz datagridview-a u dataset 02.11.2008. u 23:58 · pre 219 meseci #6
Evo probao sam i ovako ali mi izbacuje eroor
"Input string was not in a correct format.Couldn't store <proba novog> in ID Column. Expected type is Int32."

Code:
For Each DataGridViewRow In dgr.Rows

          
            DataSet11.Tables("NAR").Rows.Add(New Object() {dgr.Rows(0).Cells(0).Value, dgr.Rows(1).Cells(1).Value})
        Next
Re: iz datagridview-a u dataset 02.11.2008. u 23:59 · pre 219 meseci #7
Za Visual Basic ces morati sam da se snadjes jer radim samo u C#.


Koju ti gresku javlja ?

Stavi sve u try, catch blok i proveri.


Takodje ovo je typo:

dgvr.Cells[0].Value,dgvr.Cells[1],....

Treba:

dgvr.Cells[0].Value,dgvr.Cells[1].Value,....
Re: iz datagridview-a u dataset 03.11.2008. u 00:01 · pre 219 meseci #8
Moraces da uskladis kolone u tablei sa kolonama u dataGridView-u.

Pretpostavljam da tu kolonu nemas u dataGridView-u i da je auto_increment odn. identity kolona, ako je tako onda na to mesto samo stavi null.
Re: iz datagridview-a u dataset 03.11.2008. u 00:06 · pre 219 meseci #9
a ako stavim ovako
Code:
 DataSet11.Tables(0).Rows.Add(dgr.Rows(0).Cells(0).Value, dgr.Rows(1).Cells(1).Value)

onda mi javlja ovu grešku:
Input string was not in a correct format.Couldn't store <proba> in ID Column. Expected type is Int32.

proba je text koji sam unio
Re: iz datagridview-a u dataset 03.11.2008. u 00:10 · pre 219 meseci #10
dgr.Rows(0).Cells(0).Value

znaci celija 0 iz prvog reda

dgr.Rows(1).Cells(1).Value

znaci celija 1 iz drugog reda.

Mislim da kontas sta hocu da kazem.


Ako hoces da prebacis red iz dataGridView-a u DataTable onda ides red po red i "sve" celije iz trenutnog reda prebacis u trenutni dataSet red.


Re: iz datagridview-a u dataset 03.11.2008. u 00:18 · pre 219 meseci #11
Da razumijem ja tebe šta hočeš da hažeš.. ali problem je da mi taj tzv item iz prvog reda ne želi pohraniti u bazu jer javlja grešku
Input string was not in a correct format.Couldn't store <> in ID Column. Expected type is Int32.

znači tu di su znakovi <> tu se nalazi text tj sadržaj koji se mora pohraniti u bazu.. al ne razumem zašto javlja ovu grešku.. koji je sam smisao nje...?? znači da text u redu 0 na poziciji 1 nesmije biti u stringu nego u int32??? zbunjuje me to malo moram da priznam!!
Re: iz datagridview-a u dataset 03.11.2008. u 00:20 · pre 219 meseci #12
e sad sam još probao unijeti umjesto texta broj 12 u red.. i vidi kaku mi sad grešku javlja..
mislim sad sam se totalno pogubio u ovome
Column 'ID' is constrained to be unique. Value '12' is already present.

UŽAS
Re: iz datagridview-a u dataset 03.11.2008. u 07:26 · pre 219 meseci #13
Mozda je najbolje da napisem malo detaljniji primer:


Naprimer imas tabelu koja je definisana ovako:


Code:


DataTable MojaTabela=new DataTable();

MojaTabela.Columns.Add("ID",typeof(UInt32));
MojaTabela.Columns.Add("ime",typeof(string));
MojaTabela.Columns.Add("prezime",typeof(string));
MojaTabela.Columns.Add("godine",typeof(UInt32));



i imas dataGridView koji ima definisane sledece kolone: ime, prezime, godine.


i sada kada hoces da dodas redove iz dataGridView-a u tabelu radis sledece:


Code:



for(int i=0;i<dataGridView1.Rows.Count-1;i++)

MojaTabela.Rows.Add(new object[] {null,dataGridView1.Rows[i].Cells["ime"].Value,dataGridView1.Rows[i].Cells["prezime"].Value,Convert.ToUint32(dataGridView1.Rows[i].Cells["godine"].Value)})



Sada koristim for-petlju umesto foreach i uzimam celije po imenu da bi korisnik mogao eventualno da menja raspored kolona.

ID kolona u DataTable je verovatno auto_increment i nema potrebe da sam zadajes njenu vrednost, to radi baza podataka. takodje pogledaj kojim rasporedom dodajem kolone u MojaTabela i koje vrednosti dodajem u tabelu.
Takodje obrati paznju na tipove podataka u kolonama, da li neka kolona sadrzi null ili ilegalnu vrednost i kao takva moze izbaciti exception.

Nadam se da sam bio dovoljno jasan.

Re: iz datagridview-a u dataset 03.11.2008. u 14:54 · pre 219 meseci #14
E hvala ti puno.. provalio sam ... sad sve radi super
.. nisa morao ni onaj prvi dio koda koji si stravio ubaciti..

THANKS A LOT!!
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme