[ Mr. Rejn @ 14.09.2002. 00:06 ] @
Da li neko zna kako u Delphiju 6 da napravim program koji ce citati
bazu podataka iz MS Access 2000 (.mdb)?Posto znam da se sigurno mnogi
bave ovakvim problemima,zamolio bih za malo opsirniji odgovor.
Hvala!
[ vilyu @ 14.09.2002. 11:44 ] @
Nisam se bavio ovim, ali koliko znam to ide preko ADO-a. Detaljnije objasnjenje mozes da nadjes u knjigama Marco Cantu-a: Delfi 5 Izvornik, Mastering Delphi 6 u poglavlju o ADO-u. Mozes ih dowonload-ovati u pdf formatu preko Kazaa.
[ -zombie- @ 14.09.2002. 16:02 ] @
ja sam se odavno bavio ovim, a koliko se secam, nista prostije..

otvorish Database Desktop, a u njemu Tools->Alias Manager, i tu samo kliknesh New dugme, ismislish Database Alias, odaberesh MSACCESS Driver Type, i u Path upises putanju do mdb fajla...

posle na formu dodash obicnu komponentu tDatabase, i u njoj odaberesh DatabaseAlias koji si izmislio u prvom koraku...

posle toga, sve ide kao sa bilo kojom drugom bazom... (tTable, tQuery...)


napomena: nisam siguran, ali mislim da ovaj nacin koristi i BDE i ADO za pristup bazama, pa te moze zezati oko instalacije... zbog ovoga preporucujem da pogledash ADO komponente (dodate u D6, nisam koristio) da radish sa mdb fajlovima bez bde-a (i dalje ces uz instalaciju morati da instalirash i ADO!)... garantovano nije nista tesko.. samo prodji po help-u za d6, i sve ce ti biti jasno...
[ Rapaic Rajko @ 14.09.2002. 23:47 ] @
Postoji jos jedan nacin, a to je preko ODBC-a, koji ide uz svaku verziju Windows-a. Treba ti samo ODBC (Open Database Conectivity) drajver za Access. Tako sam ja radio zimus u jednoj firmi (nasledio od prethodnika/programera). Nemam dovoljno iskustva da bih znao da li je to radilo brzo/sporo ili dobro/lose. Da je bilo povremeno problema, bilo je (jasno; i Access i ODBC su Microsoft-ovi proizvodi).

Rajko
[ -zombie- @ 16.09.2002. 02:34 ] @
svakako, ali ti za vezu delphi <-> odbc valjda isto treba ili bde ili ado izmedju!

pa to vise lici na: delphi <-> (bde ili ado) <-> odbc <-> mdb

tako da je ovaj nacin najzaobilazniji, i najverovatniji da stvara probleme (kao sto si sam rekao)...

mada nista ne tvrdim, jer nisam radio odbc iz delhi-a!
[ Riste Pejov @ 18.09.2002. 18:53 ] @
batali bde, uzmi ADO
imas na paleti TADOConnection i TADOQuery,
nista vise ti ne treba, samo postavis jedan
alias kroz ODBC managera iz kontrol panela
i onda to povezes iz ADOconnection,

radi fino, ali ADO podrzava samo SubSet iz ANSI 92 SQL-a
tako da neke SQL kontrukte nece raditi kako ti mislis, ali ipak
ako naletis na problemima sa SQL-om onda prvo pokusaj da
uradis query u access-u pa je onda prebaci u Delphi,

uglavnom bolje je od BDE-a, mdb je bolji, stabilniji, brzi od paradoxa,
i kad distribuiras aplikaciju ne treba ti bde, sve se ukompajlira u exe.

Ako se mislis izmedzu DBE/Paradox i ADO/Access uzmi access
[ -zombie- @ 20.09.2002. 03:30 ] @
Citat:

uglavnom bolje je od BDE-a, mdb je bolji, stabilniji, brzi od paradoxa,
i kad distribuiras aplikaciju ne treba ti bde, sve se ukompajlira u exe.


skoro sam siguran da se ado ne ukompajlira u exe, vec da mora da se "ukompajlira" u instalaciju...
[ vilyu @ 20.09.2002. 10:35 ] @
Ako sam dobro pročitao, meni se čini da sve što treba za ADO postoji u Windows-u 98, pa na dalje, i nema potrebe da se posebno instalira.
[ -zombie- @ 21.09.2002. 01:40 ] @
pa da, ali je ado veoma osetljiv i na verzije (koliko sam ja upucen)

a sa jednim os-om dolazi verzija ado 2.0, sa drugim ado 2.5, sa trecim ado 2.6, sa cetvrtim ado.net 3.0 ili kako vec...

moje (neprijatno) iskusvo je da uvek morash "sa sobom da nosish" i verziju sa kojom je program pravljen...
[ kingrale @ 08.10.2002. 00:57 ] @
A niko da momku odgovori fino na pitanje...

1.Napravis bazu u Accessu i Tabelu takodjer tamo i spasis negdje ko *.mdb
2.U Delphiju postavit TDataSource,TAdoTable i AdoConnection(mada i nemora ovaj adoconnection jer vec i adotable ima connectionstring svojstvo).
Eh kako sada sta i gdje linkas.. evo:
DataSource.Dataset:=AdoTable
a
AdoTable.Connection:=AdoConnection
a u ADoconnection
kliknes na Connection string i kliknes na ono build.Izaberes
Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=admin;Data Source=C:\putanjadobaze\baza.mdb;Mode=Share Deny None;Extended Properties="";Locale Identifier=1050;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False

poslije toga se vratis na AdoTable i izaberes u svojstvu TableName neku od tabela iz tvoje access baze.Nakon toga standardno aktiviras AdoTable.Active:=true; postavis DBGrid.Dataset sa Datasourcom koji pokazuje na adotabelu i cao,to je to. Ako nisam bio dovoljno detaljan ili nejasan kontaktiraj me za dodatne informacije .Cu.
[ -zombie- @ 08.10.2002. 03:41 ] @
ja sam rekao da nisam to nikad radio u delphiu, pa nisam ni mogao da mu objasnjavam nesto sto ne znam!



btw, "i cao, to je to"... ehem... jednostavno... microsoft... (sinonimi?)

Citat:

Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=admin;Data Source=C:\putanjadobaze\baza.mdb;Mode=Share Deny None;Extended Properties="";Locale Identifier=1050;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False