zasto ne upisuje u bazu mesece,dane i sate dobro?

5

zasto ne upisuje u bazu mesece,dane i sate dobro?

offline
  • Srđan Tot
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Tako... obrati samo pažnju da zatvoriš reader kad završiš s njim.
Što se tiče greške, nešto očigledno radiš pogrešno kod random unosa. Ili ne izabereš ništa u comboboxu, ili radiš nešto čudno s podacima u comboboxu kad radiš taj random unos.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

da stavim reader.close(); pre connection.close();?

pa ne znam, on je radio normalno, samo sam ubacio taj deo koda koji je bio kod rucnog unosa, tj taj query

  private void button1_Click(object sender, EventArgs e)         {             if (String.IsNullOrEmpty(txtBroj.Text))             {                 MessageBox.Show("Unesite broj random generisanih unosa prvo!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);                             }             else             {                 int intTextBox;                 intTextBox = Convert.ToInt32(txtBroj.Text);                 intTextBox = int.Parse(txtBroj.Text);                 for (int i = 0; i < intTextBox + 1; i++)                 {                     int staro1 = comboBox1.SelectedIndex;                     int staro2 = comboBox2.SelectedIndex;                     staro1 = (rand.Next(comboBox1.Items.Count));                   staro2 = (rand.Next(comboBox2.Items.Count));                     double msDiff = dtpDo.Value.Date.Subtract(dtpOd.Value.Date).TotalSeconds;                     double randNo = rand.Next(0, (int)(msDiff + 1));                     DateTime dateRand = dtpOd.Value.Date.AddSeconds(randNo);                     DateTime s = dateRand;                     string tekstKomande = "insert into Tomislav (korisnik_id, dogadjaj_id, Datum) values('" + (comboBox1.SelectedItem as ComboBoxItem).Value.ToString() + "','" + (comboBox2.SelectedItem as ComboBoxItem).Value.ToString() + "','" + s+ "') ;";                     OleDbCommand command1 = new OleDbCommand();                     command1.Connection = connection;                     command1.CommandText = tekstKomande;                     OleDbDataReader reader;                     try                     {                         connection.Open();                         reader = command1.ExecuteReader();                         while (reader.Read())                         {                         }                     }                     catch (Exception ex1)                     {                         MessageBox.Show("Greska!"+ex1, "Debug Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);                         this.Close();                     }                     connection.Close();                     comboBox1.SelectedIndex = staro1;                     comboBox2.SelectedIndex = staro2;                                     }                 MessageBox.Show("Saved", "Upis podataka", MessageBoxButtons.OK, MessageBoxIcon.Information);             }         }



offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14828
  • Gde živiš: Niš

Napisano: 08 Okt 2014 11:23

I šta ti je ovde random osim datuma, majke ti? Very Happy

Dopuna: 08 Okt 2014 11:27

Dakle, ništa nije selektovano i to je greška. Referenca na selektovan objekat je null i zbog toga ne možeš da pročitaš Value jer ne postoji.

Šta si pokušao sa prve četri linije u for petlji?

Dopuna: 08 Okt 2014 11:34

Slobodno povezuj malo ono što ti se piše. Wink

Umesto (comboBox1.SelectedItem as ComboBoxItem).Value.ToString() treba nešto ovako da stoji: (comboBox1.Items[(new Random()).Next(comboBox1.Items.Count)] as ComboBoxItem).Value.ToString()

Ako neće ovako, onda ide ono gde pamtiš stari indeks sektovanog, postavljaš random, odradiš unos i vraćaš stari indeks.

Dopuna: 08 Okt 2014 11:37

Svakako, ovo tvoje je ustvari ovaj drugi način, i radiće kad središ ovu zbrku sa prve četiri linije u for petlji...

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

Napisano: 08 Okt 2014 11:59

Evo ovaj kod mi je upisao random sve u bazu
 private void button1_Click(object sender, EventArgs e)         {             if (String.IsNullOrEmpty(txtBroj.Text))             {                 MessageBox.Show("Unesite broj random generisanih unosa prvo!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);                             }             else             {                 int intTextBox;                 intTextBox = Convert.ToInt32(txtBroj.Text);                 intTextBox = int.Parse(txtBroj.Text);                 for (int i = 0; i < intTextBox + 1; i++)                 {                                         double msDiff = dtpDo.Value.Date.Subtract(dtpOd.Value.Date).TotalSeconds;                     double randNo = rand.Next(0, (int)(msDiff + 1));                     DateTime dateRand = dtpOd.Value.Date.AddSeconds(randNo);                     DateTime s = dateRand;                     string tekstKomande = "insert into Tomislav (korisnik_id, dogadjaj_id, Datum) values('" + (comboBox1.Items[(new Random()).Next(comboBox1.Items.Count)] as ComboBoxItem).Value.ToString() + "','" + (comboBox2.Items[(new Random()).Next(comboBox2.Items.Count)] as ComboBoxItem).Value.ToString() + "','" + s + "') ;";                     OleDbCommand command1 = new OleDbCommand();                     command1.Connection = connection;                     command1.CommandText = tekstKomande;                     OleDbDataReader reader;                     try                     {                         connection.Open();                         reader = command1.ExecuteReader();                         while (reader.Read())                         {                         }                     }                     catch (Exception ex1)                     {                         MessageBox.Show("Greska!"+ex1, "Debug Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);                         this.Close();                     }                     connection.Close();                                                       }                 MessageBox.Show("Saved", "Upis podataka", MessageBoxButtons.OK, MessageBoxIcon.Information);             }         }



Dopuna: 08 Okt 2014 12:01

E sad u izvestaju ne stoji, nista, iako sam stavio u kodu
private void Izvestaj_Load(object sender, EventArgs e)         {             connection.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Tomy\Desktop\zadatak2\zadatak2\fedek_OldVersion(2002-2003).mdb;User Id=admin;Password=;";             dt = new DataTable();             OleDbDataAdapter sda = new OleDbDataAdapter("SELECT korisnik_id.korisnik, dogadjaj_id.dogadjaj, Datum from Tomislav",connection);             sda.Fill(dt);

On bi trebao da mi ustvari iscita samo ta imena, ali kako kada je sad to id?

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14828
  • Gde živiš: Niš

Zezaš ti nas malo, a? Wink I to sam ti napisao na prošloj strani: vasa.93 :: Međutim, ako ti treba informacija o akciji (nazovimo je tako, misli se na događaj koji je izvršio korisnik), tu informaciju tražiš u spoju prve dve tabele. Kako spajaš? Tako što koristiš tabelu Tomislav kao posrednika u spoju (pošto je u pitanju MxN spoj, no da ne komplikujemoy to ćeš već razjasniti). Pored toga, tabela Tomislav čuva i sve informacije vezane za akciju (datum kod tebe). Dakle, spoj koristiš samo onda kada su ti potrebne sve informacije o akciju (recimo kod prikaza svih akcija, kao u formi na prethodnoj strani).

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

Znam, treba jos da provalim kako to :DDDDD

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14828
  • Gde živiš: Niš

Pa provalio si. Još si na prošloj strani napisao odgovarajuću komandu spoja. Sad samo to treba da prikažeš u dgv i to je to.

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

Napisano: 08 Okt 2014 12:40

hmm ne secam se, moracu da pogledam:D

Dopuna: 08 Okt 2014 12:52

SELECT Tomislav.korisnik_ID, Tomislav.dogadjaj_ID, Tomislav.Datum, dogadjaji.dogadjaj, korisnici.korisnik
FROM dogadjaji INNER JOIN (korisnici INNER JOIN Tomislav ON korisnici.ID = Tomislav.korisnik_ID) ON dogadjaji.ID = Tomislav.dogadjaj_ID;
ovo zar ne?

Dopuna: 08 Okt 2014 12:55

Ali to sam uneo u bazu, kao query i sacuvao...time sam dobio da sam ih spojio, zar ne?

offline
  • Srđan Tot
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Mislim da ne shvataš baš kako sve to funkcioniše. Taj "query" si napravio u Access bazi. Sad moraš iz njega da čitaš podatke, ali nisam siguran da OleDbCommand to omogućava. Recimo da si query nazvao MojQuery, onda komanda treba da izgleda:
SELECT * FROM MojQuery
Ako to ne radi, onda moraš i u kodu da napišeš iste komande kao kad si kreirao query u Access-u:
SELECT Tomislav.korisnik_ID, Tomislav.dogadjaj_ID, Tomislav.Datum, dogadjaji.dogadjaj, korisnici.korisnik FROM dogadjaji INNER JOIN (korisnici INNER JOIN Tomislav ON korisnici.ID = Tomislav.korisnik_ID) ON dogadjaji.ID = Tomislav.dogadjaj_ID;

offline
  • Huskar
  • Pridružio: 31 Maj 2008
  • Poruke: 885

stavio sam ovkao, jer ne zelim id da se prikaze
 OleDbDataAdapter sda = new OleDbDataAdapter("SELECT korisnici.korisnik,dogadjaji.dogadjaj,Tomislav.Datum FROM dogadjaji INNER JOIN (korisnici INNER JOIN Tomislav ON korisnici.ID = Tomislav.korisnik_ID) ON dogadjaji.ID = Tomislav.dogadjaj_ID;", connection);
Ali mi sada filtriranje ne radi po datumu, tu biram izmedu dva datuma u datapickeru, dok takodje ne radi ako filtriram po imenu korisnika i dogadjaja, tu radi odmah kada upisujem

private void textBox3_TextChanged(object sender, EventArgs e)      {          DataView DW2 = new DataView(dt);          DW2.RowFilter = string.Format("dogadjaji.dogadjaj LIKE '%{0}%'", textBox3.Text);          dataGridView1.DataSource = DW2;      }      private void textBox1_TextChanged(object sender, EventArgs e)      {          DataView DW1 = new DataView(dt);          DW1.RowFilter = string.Format("korisnici.korisnik LIKE '%{0}%'", textBox1.Text);          dataGridView1.DataSource = DW1;      }      private void button1_Click(object sender, EventArgs e)      {          if(dateTimePicker1.Value>dateTimePicker2.Value)          {              MessageBox.Show("Takav opseg nije moguc. Datum Od mora biti veci od datuma Do.", "Opseg datuma", MessageBoxButtons.OK, MessageBoxIcon.Error);                  }          else{                    string query = "select korisnici.korisnik, dogadjaji.dogadjaj, Datum from Tomislav where Datum BETWEEN ? AND ?"; OleDbCommand cmd = new OleDbCommand(query, connection); cmd.Parameters.AddWithValue("SDate", DbType.DateTime).Value = dateTimePicker1.Value; cmd.Parameters.AddWithValue("EDate", DbType.DateTime).Value = dateTimePicker2.Value; DataSet ds = new DataSet(); OleDbDataAdapter da= new OleDbDataAdapter(); connection.Open(); da.SelectCommand = cmd; da.Fill(ds, "Tomislav"); dataGridView1.DataSource = ds.Tables[0]; connection.Close();      }   }

Ko je trenutno na forumu
 

Ukupno su 1315 korisnika na forumu :: 298 registrovanih, 24 sakrivenih i 993 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 15694 - dana 01 Feb 2026 12:23

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: -[CoA]-, -Max-, 015, 04bokibole, _stipa_, A.R.Chafee.Jr., AK - 230, Aleksandar Šljivar, aleksandarbl, AleksandarV, aleph_one, alke12, alternator, amadeus, anbeast, Andrija357, Antoni S, Arhiv, Aska, Asparagus, atmel, Avalon015, avijacija, babaroga, bakovaca, bambulic, Banovo Brdo, Batko.VD.65, bax0904, bb929, belov, berste23, bestguarder, black venom, Bojan198527, bojan581, bojan_t, bojank, bojankrstc, bokicacar, Boris BM, Boris.A, Boroš, Bozjidar87, Brabant, BradaRS, brandža84, Brot, Bubimir, bukefal, C-Gun, cakija, CCCP, cekic, celeron, chichabg, Cicumile, cifra, Citalac, Clouseau, Crazzer, curuzan, cuvarkuca, cvele130, cvrle312, dacanaldo, DalmatinacMF, dankisha, darkkran, Darko8, deki1001, delboy, Denaya, dendrit86, DezurniOperativni, Df410, Dixtrix, Django777, djordjemiklusev, DJUNTA, Djuza, dmarx1, dnr, Doc, Don, Draganeli, draganl, Dragon Order, DrNeoCortex, dunavzed, Dusko Nikolin, Dzoni2412, Dzuki, Džekson, Electron, feanor, fokac, Gaga_89, gajca1977, gobrad, goxin, gregorxix, grenadir, GrobarPovratak, grunff2, Hans Gajger, HrcAk47, ikan, ikson, In_hero, Inner-Cell, invictuss, Ivan Germanovic, ivan1973, ivan_8282, Jablan, Jakonjveliki, Jan, Jeremiah, Jerry Drake, jodzula, Jonbonjovi, jopicus, Jovan.D, Jozo74, K a s p e r, Kajzer_Soze, Kalem, Kaponi, Kichma, Koce, kokodakalo, komsija1, Koridor, kozhedub, krkalon, Krusarac, Kubovac, kunktator, lacko, ladro, laganini123, Lelemood, livada123, luja, M74AB3, madun123, Makarid, maksi007, Mane88, MareMarkic, MarijaC84, marko.markovic, MarkoDzimi, markolopin, matrix_1, maxim_von_burdengate, mačković, MB120mm, mercedesamg, Mi lao shu, Might is Right, Mihailo Gazdić, Miki 84, milanpetkovicv, mile.ilic75, milenko crazy north, milikonst, milivoje_vatrogasac, Milovan Dinic, Milun24, mishkooo, mist-mist, Mitch22, mkukoleca, mm1811, mnn2, Moldovan, moldway, monomah, Mrav Obrad, Myamoto Musashi, Mzee, Naj-Turs, NemanjaCG, nenad81, neutrino, Nmr, Ognjen D., Orc, orfanel, OsmatracIzDosade, ozzy, paja69, PantR, pavle_pzs, PedjaDikovic, pein, Pekman, Perudin_92, Phaeton, pisac12, PlayerOne, Podgoritza, Podljub, Posmatrac77OKB, Povratak1912, precan, Primus17, Privrednik, proka89, Pururin, radovanstojkov023, RajkoB, rambod, Razdroid, razumihin, reader, RiV, royst33, saputnik plavetnila, Sevetar, shadower78, shaja1, Sharpshooter, Simon simonović, Simonsen23, Sin Boskic, Sioux7674, Sitan_Lopov, Sky diver 29, Smajser, SMF, Smiljkovich, Sone1983, Speer, Srna, ssekir75, stagezin, stalja, Stanlio, StepskiVuk, stibium51, Stoorb, styg, svnedelja, synergia, t84dar, takini, tanakadzo, Tandrčak, TBoy, TheBeastOfMG, tomo2, Tribal, trinitrotoluen, troki1971, Tunguska55, v0idmp3, v82, vaci, Valter071, VanZan, vathra, vazduh, VBoss, vdeki, veljkovicdani, Viceroy, virked, vladaa012, vladd, vladivostok, VNVK, vobo, VOŽD, vrlenija, vukajlo71, W123, WELJKO, wizzardone, x011, xAlex2, yiyi, zbazin, zdrebac, zemljanin, ZetaMan, zexon, Zjmc, Zmaj Tolak, zmajognjeniivan, Zoran1959, Zrcalo, Zukov, zule2, Zvrk, zzeljko