I jos nesto,imam grid,i dva textboxa i dugme koje ubacuje podatak,kada kliknem na to dugme ono ubaci podatak u datase,ali ga ne prikaze odmah u gridview....kada ponovo pokrenem program ono je dobro,znaci treba mi neki refresh dataseta ili gridview,,,sve kontrole su povezane sa dataset...
Ocitaj podatke iz baze ponovo...
evo najlaksa verzija, nemoj da te buni MySql, ja koristim njega, samo zameni sa Sql :)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace WindowsFormsApplication121
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
MySqlConnection kon = new MySqlConnection(Properties.Settings.Default.mojasemaConnectionString); //pristupam app config fajlu i uzimam informacije iz kon stringa
public DataTable Iscitaj()
{
try
{
MySqlDataAdapter da = new MySqlDataAdapter();
DataTable dt = new DataTable();
MySqlCommand sqlCom = new MySqlCommand();
sqlCom.Connection = kon;
sqlCom.CommandText = "select * from ljudi"; //selektuj sve iz tabele ljudi
da.SelectCommand = sqlCom;
//Data punjac je primio sve iz tabele i sada to nosi do tabele dataseta
da.Fill(dt); //puni dataset
return dt; //vraca vrednost dataset tabele u C#
}
catch
{
throw; //hvata gresku ukoliko je ima
}
}
void Osvezi()
{
dataGridView1.DataSource = Iscitaj(); //DataGrid se napaja iz Dataset tabele
}
void Ubaci()
{
try
{
MySqlCommand sqlCom = new MySqlCommand();
sqlCom.Connection = kon;
sqlCom.CommandType = CommandType.Text; //radi se o tekstualnom unosu
sqlCom.CommandText = "insert into ljudi(Ime_Prezime,Maticni_Broj) values(@Ime_Prezime,@Maticni_Broj)";
//komanda za unos u bazu
sqlCom.Parameters.AddWithValue("@Ime_Prezime", textBox1.Text);
sqlCom.Parameters.AddWithValue("@Maticni_Broj", textBox2.Text);
//Kolone iz baze dobijaju vrednost tekst boksova
//unosi se sa podrazumevanom vrednoscu, string je jednak varchar
kon.Open(); //otvaram konekciju
sqlCom.ExecuteNonQuery(); //ubacujem sve i ne zahtevam upit
}
catch
{
//ukoliko ima greske ne pokazuj nista, cuti bolje ti je hahaha :D
}
finally
{
kon.Close(); // i u svakom slucaju ti meni zatvori bazu :)
}
}
private void button1_Click(object sender, EventArgs e)
{
Ubaci(); //metoda od gore za ubacivanje
Osvezi();// metoda od gore za ozvezavanje, ili ti refresh.
}
private void Form1_Load(object sender, EventArgs e)
{
Osvezi(); //cim se loaduje forma ubaci vrednosti iz baze.
}
}
}
Da si pogledao onaj kod sto sam slao ili link znao bi.
[Ovu poruku je menjao Boyka dana 29.07.2012. u 20:11 GMT+1]