Problem upita u bazu ACCESS pomoću C#

poruka: 9
|
čitano: 1.997
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
15 godina
neaktivan
offline
Problem upita u bazu ACCESS pomoću C#

Pozdrav ljudi , eo imam problem ! Radim sebi ovako jednu privatnu bazu iz fore a i da malo naučim, znaći uspio sam ubacivat podatke u bazu i brisat ih, al sad želim nešto select-at u nekom vremenskom razdoblju i ne želi mi ...

 

javlja mi da je upit dobro napravljen , al mi ga ne ispiše -.-

 

nemrem skužit zašto , eo ja ću vam dati dio koda koji me muči , a vi samo tražite nešto još ako vam je potrebno , hvala.

 

private void bttnTražiHOF_Click(object sender, EventArgs e)
        {
            string dateOD, dateDO;

            DateTime datum_od = Convert.ToDateTime(DateTimePickerHOFod.Value.ToShortDateString());
            dateOD = datum_od.Month + "-" + datum_od.Day + "-" + datum_od.Year;

            DateTime datum_do = Convert.ToDateTime(DateTimePickerHOFdo.Value.ToShortDateString());
            dateDO = datum_do.Month + "-" + datum_do.Day + "-" + datum_do.Year;

            OleDbConnection con = new OleDbConnection(conn.ConnString.ToString());
            con.Open();

            try
            {
                OleDbCommand cmdPretraga = new OleDbCommand("SELECT * FROM HOF WHERE HOF.Datum >= #" + dateOD +"# AND HOF.Datum <= #" + dateDO +"#", con);
                cmdPretraga.ExecuteNonQuery();
                MessageBox.Show("Uspješno pronađene borbe u odabranom periodu", "Informacija", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch {
                MessageBox.Show("Došlo je do greške prilikom unosa", "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                con.Close();
                ((Sučelje)this.Owner).getHOF();   //Ponovo ispunjava tablice
            }
        }

Potpis:
Moj PC  
0 0 hvala 0
16 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Napiši točno što piše u error msg.

Private
16 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Imaš 2 stvari:

   1.

      cmdPretraga.ExecuteNonQuery()

      Ova naredba ti se koristi za unos ili mjenjanje postojećih podataka u tablici

   2.

      Trebaš koristiti objekat oleDbDataReader ili oleDbDataAdapter

      Reader ti se uglavnom koristi samo za čitanje podataka ali DataAdapter se koristi u većini slkučajeva

      Npr.

      Dodaj na formu dataGridView i zbriši kod poslje deklaracije OleDb komande i dodaj sljedeći:

 

      oleDbDataAdapter adapter = new oleDbDataAdapter(cmdPretraga, conn);

      dataTable dt = new datatable();

      adapter.fill(dt)

      datagridview1.datasource=dt;

 

      Ako ti nešto nije jasno samo pitaj

15 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Hm , hvala puno na odgovoru , skužio sam sad princip zašto ne radi , al sad mi je problem to napisat :D

 

malo nisam shvatio kak moram napravit :(

 

možeš li mi malo bolje objasnit molim te :)

Potpis:
16 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Na formu dodaj DataGridView i preimenuj ga  u dgv.

Ovo je cijeli kod što ti treba:

 

private void bttnTražiHOF_Click(object sender, EventArgs e)
        {
            string dateOD, dateDO;

            DateTime datum_od = Convert.ToDateTime(DateTimePickerHOFod.Value.ToShortDateString());
            dateOD = datum_od.Month + "-" + datum_od.Day + "-" + datum_od.Year;

            DateTime datum_do = Convert.ToDateTime(DateTimePickerHOFdo.Value.ToShortDateString());
            dateDO = datum_do.Month + "-" + datum_do.Day + "-" + datum_do.Year;

            OleDbConnection con = new OleDbConnection(conn.ConnString.ToString());
          
            try
            {
                OleDbCommand cmdPretraga = new OleDbCommand("SELECT * FROM HOF WHERE HOF.Datum >= #" + dateOD +"# AND HOF.Datum <= #" + dateDO +"#", con);
                oleDbDataAdapter adapter = new oleDbDataAdapter(cmdPretraga, conn);

      dataTable dt = new datatable("tablica");

      adapter.fill(dt)

      dgv.datasource=dt;

 
            }
            catch

            {
                MessageBox.Show("Došlo je do greške prilikom unosa", "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
           

        }

 

To ti je cijeli kod.

15 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Pa imam ja već formu DataGridView  , i zove se DataGridHOF .  Znaći sad umjesto tvog dgv , ja napišem DataGridHOF ?

 

idem probat , pa javim..

 

hvala

Potpis:
15 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

Ej probao sam ubacit ovaj kod i promjenit ono dgv u svoje , al mi baca neke 3 greške:

 

http://slike.hr/slike/greke_2eccb.jpg.html

Potpis:
15 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

hehe , je proradilo je , ovaj kod sam napravio..

 

private void bttnTražiHOF_Click(object sender, EventArgs e)
        {
         string dateOD, dateDO;

            DateTime datum_od = Convert.ToDateTime(DateTimePickerHOFod.Value.ToShortDateString());
            dateOD = datum_od.Month + "-" + datum_od.Day + "-" + datum_od.Year;

            DateTime datum_do = Convert.ToDateTime(DateTimePickerHOFdo.Value.ToShortDateString());
            dateDO = datum_do.Month + "-" + datum_do.Day + "-" + datum_do.Year;

            OleDbConnection con = new OleDbConnection(conn.ConnString.ToString());
            con.Open();

            OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM HOF WHERE HOF.Datum >= #" + dateOD + "# AND HOF.Datum <= #" + dateDO + "#", con);
            DataSet ds = new DataSet();
            DataTable dt = new DataTable();
            da.Fill(dt);
            this.DataGridHOF.DataSource = dt.DefaultView;

            con.Close();
   
        }

:) hvala ti kolega puno...  maknuo sam ono sve try, catch bla bla... makar bi mogao vratit... al dobro nije to sad bitno...

 

sad si moram napravit tipku refresh , znaći nakon što si ja nešto izlistam , želim s tom tipkom da mi se svi zapisi vrate na datagrid...

Potpis:
15 godina
neaktivan
offline
RE: Problem upita u bazu ACCESS pomoću C#

hahah , sad sam naišao na drugi deblni problem -.-

 

ovaj isti kod prekopiram za drugu tablicu , naravno promjenim sve da se odnosti na tu tablicu , i ne radi -.-

 

stisnem tipku traži , a ono ko da nisam ništa stisnuo :(

 

ne kužim sad to

 

 

EDIT: proradilo , skopiro sam ponovo i proradilo.. hm ..

Potpis:
Poruka je uređivana zadnji put uto 25.5.2010 0:00 (plejer).
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice