[ toxi_programer @ 09.03.2007. 15:18 ] @
Pitanje nije offtopic, jer ima veze sa .NETom.
Vec neko vreme pokusavam da naucim bkako da radim sa bazama podataka ali jednostavno ne znam odakle da krenem. Naime, znam šta su to Baze i kako funkcionišu a našao sam i par tutoriala o SQLu.
E sad, pitanje je malo glupo i šašavo al' šta da se radi. Pretpostavimo da znam da napišem nešto ovako i da znam šta to znači( citat iz tutoriala):
Code:

SELECT Ime, Prezime, Adresa, Grad, Republika
FROM TabelaAdresa;

Ono što ne znam je GDE DA NAPIŠEM OVO? Koristim Visual Studio 2003 a radim u C++u. Očigledno ovo ne mogu direktno upisati u kod.
Znam da postoje .NET klase System::Data::SqlClient i System::Data::OleDb, ali jel one služe za to? Molim vas, bilo kakva pomoć je dobrodošla.

Hvala unapred!
[ Sandra_G @ 09.03.2007. 16:27 ] @
Jedino sto mogu da ti preporucim jeste da probas sa ADO.NET tutorialima na msdn-u (msdn.microsoft.com) - to je tehnologija koja se koristi u .NET-u za komunikaciju sa bazama - tu sam i ja pocela. Ali zaista nemam pojma da li ima neke razlike u sintaksi za C++ (ja radim u C#).

U svakom slucaju ces morati da naucis SQL i relacione baze podataka, to je osnova za rad sa bazama.

Pozdrav i srecno!
[ toxi_programer @ 11.03.2007. 13:56 ] @
OK, hvala ti!
Međutim, jel bi mogla ti( ili neko ko bude imao vremena :) ) da mi napiše najkraći mogući primeri za konektovanje i upisivanje nečeg u (access) bazu preko ADO.NET? Nije bitno dal je u C# ili C++...
[ roberto555 @ 11.03.2007. 17:25 ] @
-dodaj na formu jedan datagrid(tu češ pokazat podatke), dodaj jedan oleDBdataadapter(za access), i tu konfiguiraš odmah ti se pojavi 'čarobnjak' i konekciju i on sam ti ju doda, vidjeti češ, kad ga kreiraš klikni na njega i onda generatedataset, tamo sve pusti kako je i klikni OK, uz konekciju, adapter pojavit će se još dataset, i nakon toga stavi još jedan button na formu, i u njegov _click event napiši:

Code:

OleDbDataAdapter.SelectCommand.CommandText="SELECT Ime, Prezime, Adresa, Grad, Republika
FROM TabelaAdresa";
OleDbDataAdapter.Fill(dataset.TabelaAdresa);
DataGrid.DataSource=dataset.TabelaAdresa;
//ako si sve napravio kako treba tu češ vidjeti u grdidu podatke iz "TabelaAdresa"


- davno sam radio u vs2003 pa možda nešto nije kako piše (nego je kako je u vs2005), ako ne kreiraš dataset na ovaj način možeš ovako(sa datatable):

Code:

Private DataTable dt=New DataTable();

_clickGumba:
OleDbDataAdapter.SelectCommand.CommandText="SELECT Ime, Prezime, Adresa, Grad, Republika
FROM TabelaAdresa";//ovo si možda upisao kod konfiguracije pa nebi sad trebao al upiši
OleDbDataAdapter.Fill(dt);
DataGrid.DataSource=dt;


-dodavanje kolone objektuDataTable

Code:

Private DataTable dt=New DataTable();

dt.Columns.Add("naziv_kolone");


-možeš preko OleDbCommand i recimo datatreader

Code:

Private DataTable dt=New DataTable();

-click:
OleDbCommand cmd=new OleDbCommand();
cmd.Connections=tvojaKonekcijs;
cmd.ConnectionType=ConnectionType.Text;
cmd.CommandText="SELECT Ime, Prezime, Adresa, Grad, Republika FROM TabelaAdresa";

OleDbReader rdr=null;
DataRow dr;
tvojaKonekcija.Open();
rdr=cmd.ExecuteReader();

while(rdr.Read())
{
dr=dt.NewRow();
dr["Ime"]=rdr["Ime"];
dr["Prezime"]=rdr["Prezime"];
dr["Grad"]=rdr["Grad"];
dr["Adresa"]=rdr["Adresa"];
dr["Republika"]=rdr["Republika"];
dt.Rows.Add(dr);//dodaš redak u koleciju
}
dt.AcceptChanges();
tvojaKonekcija.Close();
DataGrid.Datasource=dt;


-ovo je za citanje , za upisivanje je još jednostvnije umjesto select upita upiši insert,update,delte, šta želiš, i napravi cmd.executeNonquery();, ili u oledbdataadapteru koristiš umjesto fill update, ako vršiš promjen u gridu, koji je vazan na dataset (vrše se promjene i u datasetu), no to nije baš najbolji način!

nadam se da je od koristi!
[ toxi_programer @ 13.03.2007. 17:21 ] @
Hvala vam puno!!! Uspeo sam da uradim.