[ 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! |
[ Mr. Rejn @ 14.09.2002. 00:06 ] @
[ 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 Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|