🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #488

Re: Jak się podłączyć do bazy danyc Access??

#488
From: Marek Janaszewski USUNTO. z adre...
Date: Wed, 18 Feb 2004 00:44
52 lines
3484 bytes
W artykule news:c0ps9s$fm4$1...@news.onet.pl,
niejaki(a): karol69 z adresu <kar...@op.pl> napisał(a):

> Witam
>
> Mam 2 pytanka:
> 1. Jak podłączyć się do bazy danych Access przy użyciu C#, pełny
> dostęp?
> 2. I jak potem wyświetlić te dane na formie, najlepiej w postaci
> jakiejś tabelki z możliwością jak kliknę w rekord to otwiera mi nową
> formę z pełnym rekordem?
[...]

Witam!

Aby połączyć się do Accessa trzeba użyć następującego zestawu komponentów:
- OleDbConnecion i ustawić odpowiedni ConnectionString, np.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Test.mdb
- OleDbDataAdapter, można tu określić zapytanie które będzie wykonywane na
zbiorze danych w celu uzyskania danych, np. SELECT * FROM Table
- Następnie trzeba użyć komponentu DataSet, który może przechowywać dane z
wielu tabel. Ponieważ dane te są przechowywane w pamięci i w czasie ich
przeglądania i baza nie musi być połączona. Można zamknąć połączenie
odłączyć program do sieci i zwolnić zasoby serwera trzeba zadając zapytanie
w OleDbDataAdapter pobrać tylko te dane, które będą potrzebne.
- Następnie należy wywołać metodę Fill dla OleDbDataAdapter i podać nazwę
zbioru danych, który zostanie wypełniony danymi w komponencie DataSet
- Ostatni z możliwych ruchów to użycie systemowego DataGrida w celu
wyświetlania danych z DataSet. Należy gridowi ustawić, który ze zbiorów
wewnątrz DataSet danych ma wykorzystać ponieważ on, także może wyświetlać
wiele zbiorów.

Wszystkie podane komponenty pochodzą z przestrzeni nazw System.Data.(OleDb),
tylko grid z System.Windows.Forms.

Wygląda na to, że różnica w obsłudze baza danych ADO.NET w stosunku do ADO
jest dość duża. ADO.NET działa w modelu aktówki i brak w nim jest interfejsu
IRowset (ile dobrze pamiętam nazwę). ADO także nie próbuje samo zgadnąć
jakie powinny być możliwe aktualizacje do każdego widoku czyli dowolnie
złożonego zapytania SELECT. Za to jest możliwość i chyba nawet obowiązek
wpisania odpowiednich zapytań odpowiedzialnych za operacje Insert, Delete,
Update. Wszystkie te operacje zostaną wykonane przy synchronizacji danych z
bazą danych.

Gdzieś czytałem, że ADO.NET ma także wiele spójnego XML-em. Nie wiem czy ten
format nie jest stosowany jako pośredni przy komunikacji z serwerem i
ułatwić konwersje danych.

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Technical Details
Message-ID: <c0uch5$q39$2@news.atman.pl>
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!newsfeed.tpinternet.pl!news.atman.pl!not-for-mail
References: <c0ps9s$fm4$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!newsfeed.tpinternet.pl!news.atman.pl!not-for-mail
From: "Marek Janaszewski \(USUN_TO. z adresu!\)" <USUN_TO...@gazeta.pl>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: Jak się podłączyć do bazy danyc
 Access??
Date: Wed, 18 Feb 2004 01:44:02 +0100
Organization: ATMAN
Lines: 53
Message-ID: <c0uch5$q39$2@news.atman.pl>
References: <c0ps9s$fm4$1@news.onet.pl>
NNTP-Posting-Host: staticline702.toya.net.pl
Mime-Version: 1.0
X-Trace: news.atman.pl 1077065061 26729 217.113.228.127 (18 Feb 2004 00:44:21 GMT)
X-Complaints-To: use...@atman.pl
NNTP-Posting-Date: Wed, 18 Feb 2004 00:44:21 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit