Współpraca z innymi bazami danych (import/export danych, tabele połączone, ODBC) Na podstawie Microsoft Office XP i Microsoft Office 2000 Pokaz został przygotowany przez: • Krzysztof Siwiec • Daniel Grabowski • Marian Partyka 2 Wprowadzenie Zanim przejdziemy do zgłębiania podniesionego przez nas zagadnienia, wypadałoby krótko scharakteryzować czym właściwie jest owa baza danych? 3 Baza danych Baza danych jest zbiorem informacji związanych tematycznie lub ze względu na przeznaczenie, na przykład śledzenie zamówień klientów lub zarządzanie kolekcją płyt. Jeśli baza danych nie jest przechowywana na komputerze lub tylko jej część jest na nim przechowywana, a śledzone są informacje z wielu źródeł, trzeba je samodzielnie skoordynować i zorganizować. Przypuśćmy na przykład, że numery telefonów dostawców są przechowywane w różnych miejscach: na kartach z numerami telefonów dostawców, w segregatorach zawierających informacje o produktach i w arkuszu kalkulacyjnym zawierającym informacje o zamówieniach. Jeśli numer telefonu dostawcy ulegnie zmianie, informacje te trzeba będzie zaktualizować we wszystkich trzech miejscach. W bazie danych wystarczy jednak zaktualizować te informacje w jednym miejscu - numer telefonu dostawcy jest automatycznie aktualizowany w bazie danych we wszystkich miejscach, w których jest używany. 4 Podstawowymi częściami składowymi bazy danych są: Aby w sposób efektywny przechowywać dane, należy utworzyć jedną tabelę dla każdego typu informacji, które mają być śledzone. Aby zebrać dane z wielu tabel w kwerendzie, formularzu, raporcie lub na stronie dostępu do danych, należy zdefiniować relacje między tabelami. TABELE 5 KWERENDY Aby znaleźć lub pobrać tylko te dane, które spełniają określone warunki lub dane z wielu tabel, należy utworzyć kwerendę. Kwerenda może również aktualizować lub usuwać wiele rekordów jednocześnie i przeprowadzać predefiniowane lub niestandardowe obliczenia na danych. 6 FORMULARZE Aby można było łatwo oglądać, wprowadzać lub zmieniać dane bezpośrednio w tabeli, należy utworzyć formularz. Po otwarciu formularza, program Microsoft Access pobiera dane z jednej lub kilku tabel i wyświetla je na ekranie w układzie wybranym przez użytkownika w Kreatorze formularzy lub utworzonym samodzielnie w widoku projektu W tabeli jest wyświetlanych jednocześnie wiele rekordów, ale w celu przejrzenia określonego rekordu konieczne może być przewinięcie tabeli. Podczas przeglądania tabeli nie można także aktualizować danych w wielu tabelach jednocześnie. Formularz przedstawia pojedyncze rekordy i mogą w nim być wyświetlane pola pochodzące z kilku tabel. Można w nim także wyświetlać obrazy i inne obiekty. Formularz może zawierać przyciski służące do drukowania, otwierania innych obiektów lub automatyzujące zadania w inny sposób. 7 Raporty Do analizy danych lub zaprezentowania ich w określony sposób na wydruku służy raport. Można na przykład wydrukować jeden raport, który grupuje dane i wylicza podsumowania i drugi, z innymi danymi, sformatowanymi w sposób odpowiedni dla etykiet wysyłkowych. 8 Importowanie lub łączenie tabel z innego pliku programu Microsoft Access 9 Importowanie i łączenie danych oraz obiektów bazy danych — informacje • • • • W programie Microsoft Access istnieje możliwość wyboru między dwoma sposobami używania danych z zewnętrznych źródeł danych. Można: Importować dane do nowej tabeli Microsoft Access, co jest sposobem konwersji danych z innego formatu i skopiować ją do programu Microsoft Access. Można też importować obiekty bazy danych do innej bazy danych programu Access lub projektu programu Access( plik programu, który łączy się z bazą danych programu MS SQL Server i jest używany do tworzenia aplikacji klient/serwer. Plik projektu nie zawiera żadnych danych ani obiektów opartych na definicjach danych, takich jak tabele i widoki). Utworzyć łącze danych, co pozwala na przeglądanie i edytowanie danych z innej aplikacji bez importowania, zarówno w pierwotnej aplikacji, jak i w pliku programu Access( Plik bazy danych lub projektu programu . Baza danych Access przechowuje obiekty i dane bazy danych w plikach .mdb. Plik projektu nie zawiera danych i jest używany do łączenia z bazą danych programu MS SQL Server). Można łączyć dane z wielu różnych obsługiwanych baz danych, programów i formatów plików. 10 Powody, dla których należy importować dane do tabeli Jeśli dane będą wykorzystywane tylko w programie Microsoft Access, to należy je importować. Program Microsoft Access pracuje szybciej z tabelami we własnym formacie, a w razie potrzeby importowaną tabelę można zmodyfikować, tak jak każdą inną tabelę, utworzoną w programie Microsoft Access. 11 Powody, dla których należy połączyć dane z tabeli zewnętrznej Potrzeba połączenia tabel z innej bazy danych Microsoft Access może powstać, gdy na przykład wykorzystywana jest tabela z innej bazy danych współużytkowanej w sieci. Możliwość taka jest szczególnie korzystna, jeśli wszystkie tabele są przechowywane na serwerze sieciowym, a formularze, raporty i inne obiekty znajdują się w innej, współużytkowanej bazie danych. Rozdzielenie istniejącej bazy danych na dwie części, nazywane zewnętrzną (front-end) i wewnętrzną (back-end) bazą danych, jest bardzo proste. Jeśli dane, które będą wykorzystywane, są aktualizowane także przez program inny niż Microsoft Access, to należy je połączyć. W ten sposób dane w czasie aktualizacji, pobierania i przydzielania innym użytkownikom pozostają na miejscu, a program Microsoft Access ma do nich bezpośredni dostęp. Pozwala to utworzyć na przykład kwerendę, formularz lub raport oparty na danych zewnętrznych, wykorzystać je do działań na danych w tabeli programu Microsoft Access, oglądać w różnych widokach, podczas gdy inni użytkownicy mogą je wykorzystywać w programie oryginalnym. Z projektami Access można również łączyć tabele programu SQL Server. Widok tabeli połączonej można utworzyć za pomocą Kreatora łączenia tabel. Widoki te mogą być używane w formularzach, raportach, kwerendach i stronach dostępu do danych w ten sam sposób, jak każda inna tabela. 12 Na czym polega importowanie danych? W procesie importowania danych tworzona jest kopia informacji w nowej tabeli w bazie danych lub w projekcie programu Access. Tabela lub plik źródłowy nie ulega zmianie w tym procesie. Kiedy dane są importowane, nie można przyłączać danych do istniejących tabel (z wyjątkiem przypadków importowania arkuszy kalkulacyjnych lub plików tekstowych). Jednak po importowaniu tabeli do bazy danych Access można wykonać kwerendę dołanczającą(kwerenda funkcjonalna, która rekordy znajdujące się w zestawie wyników kwerendy dodaje na końcu istniejącej tabeli.), a w projekcie Access można zastosować procedurę przechowywaną( Wstępnie skompilowana kolekcja instrukcji SQL i opcjonalnych instrukcji kontroli przepływu, przechowywana pod jedną nazwą i przetwarzana jako jednostka. Procedury przechowywane, przechowywane są w bazie danych SQL i mogą być uruchamiane przez jedno wywołanie z aplikacji.) lub kwerendę dołączającą, aby dodać dane jednej tabeli do innej. Można także importować obiekty bazy danych inne niż tabele, takie jak formularze lub raporty, z innej bazy danych lub projektu Access. 13 Na czym polega łączenie danych Łączenie danych umożliwia odczyt i, w większości przypadków, aktualizację danych ze źródeł zewnętrznych bez konieczności ich importowania. Format zewnętrznego źródła danych nie jest modyfikowany, dzięki czemu w dalszym ciągu można używać tego pliku w programie, w którym został oryginalnie utworzony. Łączenie tabel jest możliwe tylko w bazie danych programu Access, lecz nie w projekcie Access. W programie Microsoft Access do reprezentacji połączonych tabel używane są inne ikony niż do reprezentacji tabel przechowywanych w bieżącej bazie danych. Jeśli zostanie usunięta ikona tabeli połączonej, usunięciu ulega tylko łącze do tabeli, a nie sama zewnętrzna tabela. W projektach Microsoft Access tworzony jest widok odwołujący się do połączonej tabeli. Do takiego widoku mogą następnie odwoływać się formularze, raporty, strony dostępu do danych i kwerendy. Możliwość wstawiania, aktualizacji lub usuwania rekordów w widoku wynikowym jest uzależniona od właściwości określonego źródła danych. 14 Programy nie obsługiwane Jeśli w programie, którego dane nie są przechowywane w żadnej z obsługiwanych zewnętrznych baz danych ani w żadnym formacie plików, istnieje możliwość eksportowania, konwertowania lub zapisywania swych danych w jednym z tych formatów, wówczas można importować te dane. Ponadto, kiedy jest importowany lub łączony format zewnętrznej bazy danych, takiej jak dBASE lub Paradox, program Access zazwyczaj zachowuje indeksy. Na przykład: nie można bezpośrednio importować ani połączyć bazy danych Microsoft Works, lecz można eksportować dane z tego programu do pliku bazy danych dBASE IV (.dbf), a następnie importować te dane do programu Microsoft Access, aby zachować nazwy pól i indeksy. Na ogół w większości nieobsługiwanych programów, nawet pochodzących z innych systemów operacyjnych, można eksportować dane do pliku tekstowego rozdzielonego( plik zawierający, w których poszczególne wartości pola są oddzielone znakiem np. przecinkiem lub tabulatorem.) lub o stałej szerokości( plik zawierający dane, w którym każde pole ma stałą szerokość.), który można następnie importować lub połączyć w programie Microsoft Access, chociaż nie można zachować indeksów. 15 Automatyzacja operacji importowania Aby uprościć często wykonywane operacje importowania, można je zautomatyzować tworząc makro lub tworząc procedurę w języku Microsoft Visual Basic for Applications. Jest to przydatne na przykład przy regularnym importowaniu danych lub kiedy stosowane są nietypowe lub złożone wymagania dotyczące importowania danych. 16 Właściwości tabeli połączonej Po otwarciu tabeli połączonej w widoku Projekt, wygląda ona jak zwykła tabela Microsoft Access. Chociaż nie można zmieniać definicji tabeli i jej pól w zewnętrznej bazie danych, można jednak ustawić właściwości decydujące o wyglądzie tych pól w programie Microsoft Access. Zmiany wprowadzone we właściwościach tabel połączonych dotyczą tylko sposobu obsługi i wyświetlania tych danych przez program Microsoft Access, nie są one odzwierciedlane w tabeli źródłowej. Właściwości pól, które można ustawiać dla tabel połączonych przedstawia poniższa tabela. 17 Właściwość Działanie Format Decyduje o sposobie wyświetlania danych w polu DecimalPlaces Decyduje o liczbie wyświetlanych miejsc po przecinku InputMask Służy do utworzenia maski wprowadzania danych ze znakami separatora i pustymi miejscami do wypełnienia Caption Powoduje zmianę nagłówka kolumny w arkuszu danych i pozwala określić nazwę domyślną, która będzie używana jako etykietka przy dodawaniu pola do formularza 18 W przypadku tabel połączonych nie można zmienić innych właściwości pól. Aby jednak proces wprowadzania danych był bardziej efektywny i mniej narażony na błędy, można utworzyć formularze służące do wprowadzania lub edycji danych w tabelach połączonych oraz ustawić właściwości formantów (obiektów graf. Interfejsu użytkownika, np. pole tekstowe, pole wyboru, pasek przewijania lub przycisk polecenia, który pozwala użytkownikom sterować programem. Formanty są używane do wyświetlania danych lub opcji do wyboru, wykonywania akcji albo poprawiania czytelności interfejsu użytkownika.) związanych z polami w tabelach połączonych. Można na przykład w tych formularzach ustawić dla formantów właściwości DefaultValue, ValidationRule i ValidationText. Jeśli łączone są dwie tabele z tej samej bazy danych programu Microsoft Access, wszelkie ustanowione między nimi relacje pozostają w mocy. 19 Jeśli łączone są tabele z innej bazy danych programu Microsoft Access, używane są ustawienia właściwości określone w bazie danych, w której tabele są przechowywane. Jeśli na przykład dla tabeli w oryginalnej bazie danych są określone reguły sprawdzania poprawności, dane wprowadzane w tabeli połączonej muszą także spełniać warunki określone w tych regułach. Zmiana tych właściwości jest możliwa po otwarciu tabeli w tej bazie danych, w której jest ona przechowywana. Może zaistnieć potrzeba zmiany nazw tabel połączonych. Ponieważ nazwy tabel w programie Microsoft Access mogą zawierać spacje i mieć długość do 64 znaków, warto czasami po dołączeniu tabeli nadać jej bardziej opisową nazwę. Jeśli na przykład łączona jest tabela typu dBASE o nazwie SLSDATA, istnieje możliwość dokonania zmiany nazwy tabeli połączonej na „Dane o sprzedaży (z bazy danych dBASE)”. Należy zauważyć, że nie spowoduje to zmiany nazwy samej tabeli, lecz tylko nazwy używanej w programie Microsoft Access jako odwołanie do łącza z tabelą. 20 A tak to mniej więcej wygląda w praktyce 21 Krok pierwszy W pierwszej kolejności należy otworzyć bazę danych lub przełączyć się do okna bazy danych( okno które pojawia się po otwarciu bazy danych programu Access lub jego projektu. Wyświetlane są w nim skróty umożliwiające tworzenie nowych i otwieranie istniejących obiektów bazy danych. 22 Krok drugi Jeśli baza danych jest już otwarta, aby importować (kopiować dane z pliku tekstowego, arkusza kalkulacyjnego, lub tabeli bazy danych do tabeli programu Access. Importowanych danych można użyć do utworzenia nowej tabeli albo można je dołączyć do istniejącej tabeli, która ma pasującą strukturę danych) tabele, w menu Plik należy wybrać polecenie Pobierz dane zewnętrzne, a następnie kliknąć polecenie Importuj. 23 Aby połączyć tabele, w menu Plik należy wybrać polecenie Pobierz dane zewnętrzne, a następnie kliknąć polecenie Połącz tabele. 24 Krok trzeci Należy upewnić się także, że w oknie dialogowym Importowanie (lub Połącz) w polu Pliki typu wybrana jest opcja Microsoft Access (*.mdb; *.adp; *.mda; *.mde; *.ade). Następnie trzeba kliknąć strzałkę po prawej stronie pola Szukaj w, tam wybieramy dysk i folder zawierający plik programu Access, który chcemy importować lub połączyć, a następnie klikamy dwukrotnie ikonę bazy danych. W oknie dialogowym Importowanie obiektów (lub Połącz tabele) klikamy każdą z tabel, którą chcemy importować lub połączyć. 25 Oto zaimportowane tabele 26 A to przykład tabeli połączonej 27 Jeśli importujemy tabele i chcemy importować tylko definicje wybranych tabel (a nie zawarte w nich dane), musimy kliknąć przycisk Opcje, a następnie w obszarze Importuj tabele opcję Tylko definicje. Uwaga!!! Jeśli importowana tabela jest już połączona, program Access nie importuje danych, lecz łączy tabelę z jej źródłem danych (czyli kopiuje informacje o połączeniu). 28 Importowanie danych z pliku tekstowego Analogicznie jak to miało miejsce w przypadku danych rodem z accessa, tutaj także rozpoczynamy od otwarcia bazy danych lub przełączenia się do okna bazy danych. Jeśli baza danych jest już otwarta, wykonujemy jedną z następujących czynności – – Aby importować dane, w menu Plik wybieramy polecenie Pobierz dane zewnętrzne, a następnie klikamy polecenie Importuj. Aby połączyć dane, w menu Plik wybieramy polecenie Pobierz dane zewnętrzne, a następnie klikamy polecenie Połącz tabele. 29 • • W oknie dialogowym Importowanie (lub Połącz) w polu Pliki typu należy wybrać opcję Pliki tekstowe (*.txt; *.csv; *.tab; *asc). Potem klikamy strzałkę po prawej stronie pola Szukaj w, wybieramy napęd i folder, w którym znajduje się plik, a następnie klikamy dwukrotnie jego ikonę. 30 Następnie należy postępować zgodnie z instrukcjami wyświetlanymi w kolejnych oknach dialogowych Kreatora importu tekstu. Klikamy przycisk Zaawansowane, aby utworzyć lub zastosować specyfikację importu/eksportu( specyfikacja przechowująca informacje, których program Access potrzebuje do importowania lub eksportowania pliku z tekstem o stałej szerokości lub rozdzielanym.). Aby anulować importowanie danych, naciśnij klawisze CTRL+BREAK. Uwagi Można dołączać dane do istniejącej tabeli pod warunkiem, że pierwszy wiersz pliku tekstowego odpowiada nazwom pól tabeli. Jeśli wszystkie rekordy w pliku tekstowym o stałej szerokości mają tę samą długość, to separator wierszy (na przykład znak powrotu karetki i wysuwu wiersza) osadzony w środku rekordu nie spowoduje nieoczekiwanych rezultatów. Jeśli jednak nie wszystkie rekordy mają tę samą długość, osadzony separator wierszy zostanie potraktowany przez program Microsoft Access jako koniec rekordu. 31 A oto wynik importu danych z pliku typu .txt. 32 I gotowe 33 Importowanie lub łączenie danych z arkusza kalkulacyjnego Przed podjęciem dalszych działań należy upewnić się, czy dane w arkuszu kalkulacyjnym są rozmieszczone w odpowiednim formacie tabeli, każde pole (kolumna) arkusza zawiera dane tego samego typu, a każdy wiersz zawiera te same pola. 34 Ponownie otwieramy bazę danych lub przełączamy się do okna Baza danych, jeśli baza danych jest już otwarta. Następnie: – – Aby importować arkusz kalkulacyjny, w menu Plik wybierz polecenie Pobierz dane zewnętrzne, a następnie kliknij polecenie Importuj. Aby połączyć arkusz kalkulacyjny, w menu Plik wybierz polecenie Pobierz dane zewnętrzne, a następnie kliknij polecenie Połącz tabele. 35 W oknie dialogowym Importowanie (lub Połącz) w polu Pliki typu wybierzemy opcję Microsoft Excel (*.xls). Klikamy strzałkę po prawej stronie pola Szukaj w, wybieramy napęd i folder, w którym znajduje się plik arkusza kalkulacyjnego, a następnie kliknamy dwukrotnie jego ikonę. Następnie postępujemy według instrukcji wyświetlanych w kolejnych oknach dialogowych Kreatora importu arkuszy. W przypadku importowania ze skoroszytu programu Microsoft Excel w wersji 5.0 lub nowszej, możliwy jest import danych tylko z jednego arkusza w skoroszycie. Nie jest możliwy import z innych plików zawierających wiele arkuszy, takich jak skoroszyty programu Microsoft Excel w wersji 4.0. Aby importować z takich plików, należy najpierw zapisać każdy arkusz kalkulacyjny jako odrębny plik. 36 To mniej więcej ma taką postać 37 Uwagi • Można importować lub połączyć wszystkie dane z arkusza kalkulacyjnego albo tylko dane z nazwanego zakresu komórek. Mimo, że zwykle w programie Microsoft Access tworzy się nową tabelę przeznaczoną na dane, można także dołączyć dane do istniejącej tabeli, jeśli tylko nagłówki kolumn arkusza kalkulacyjnego odpowiadają nazwom pól tabeli. • Program Access próbuje przypisać odpowiedni typ danych do importowanych pól, należy jednak sprawdzić, czy ustawiono w nich żądany typ danych. Na przykład, w bazie danych programu Access pole numeru telefonu lub kodu pocztowego może zostać importowane jako pola typu Liczba, ale należy je zmienić na pole tekstowe, ponieważ prawdopodobnie na tego typu polach nie będą wykonywane żadne obliczenia. W razie potrzeby należy także sprawdzić i ustawić właściwości pól, takie jak formatowanie. 38 Importowanie danych z bazy danych SQL lub z innego źródła danych ODBC Aby tego dokonać ponownie otwieramy plik programu Access lub przechodzimy do okna bazy danych otwartego pliku programu. Następnie : – Aby importować tabele, w menu Plik wybierz polecenie Pobierz dane zewnętrzne, a następnie kliknij polecenie Importuj. – Aby połączyć tabele, w menu Plik wybierz polecenie Pobierz dane zewnętrzne, a następnie kliknij polecenie Połącz tabele. • W oknie dialogowym Importowanie (lub Połącz) w polu Pliki typu wybierz opcję ODBC Databases(). • Okno dialogowe Wybierz źródło danych zawiera listę źródeł danych wszystkich sterowników ODBC( Open Database Connectivity: Plik programu używany do łączenia z określoną bazą danych. Każdy program bazy danych, taki jak Access, dBASE lub SQL Server wymaga innego sterownika)zainstalowanych na komputerze.) zainstalowanych na komputerze. 39 • • • • Klikamy kartę Plikowe źródło danych lub Komputerowe źródło danych, a następnie dwukrotnie źródło danych ODBC, które chcemy importować. Aby zdefiniować nowe źródło danych dla dowolnego zainstalowanego sterownika ODBC, najpierw klikamy przycisk Nowe i postępuj zgodnie z instrukcjami wyświetlanymi w oknie dialogowym Tworzenie nowego źródła danych i w kolejnych oknach dialogowych. Jeśli wybrane źródło ODBC wymaga logowania, wprowadzamy identyfikator logowania i hasło (mogą być także wymagane dodatkowe informacje), a następnie kliknamy przycisk OK. Program Microsoft Access połączy się ze źródłem danych ODBC i wyświetli listę tabel, które można importować lub połączyć. 40 • Jeśli łączymy tabelę, zaznaczamy pole wyboru Zapisz identyfikator logowania i hasło, aby zapisać informacje dla tabeli w bieżącej bazie danych programu Access, tak aby użytkownicy nie musieli ich wprowadzać. Jeśli pole wyboru pozostanie wyczyszczone, wszyscy użytkownicy będą musieli wprowadzać identyfikator logowania i hasło przy każdym otwarciu tabeli podczas następnych nowych sesji pracy z programem Microsoft Access. Administrator bazy danych SQL może także podjąć decyzję o wyłączeniu tego pola wyboru, co spowoduje, że wszyscy użytkownicy będą musieli wprowadzać identyfikator logowania i hasło za każdym razem, gdy łączą się z bazą danych SQL. • Kliknij każdą z tabel, które chcesz importować lub połączyć, a następnie kliknij przycisk OK. Jeśli łączona tabela nie posiada indeksu jednoznacznie identyfikującego poszczególne rekordy, w programie Microsoft Access zostanie wyświetlona lista pól połączonej tabeli. Kliknij pole lub kombinację pól, która w sposób unikatowy będzie identyfikować poszczególne rekordy, a następnie kliknij przycisk OK. 41 Podobnie można importować dane jeszcze z wielu innych formatów. Oto niektóre z nich: MS Outlook, MS Exchange, MS Works, dBase, Paradox, Pliki XML 42 Eksportowanie danych i obiektów bazy danych — informacje 43 Eksportowanie jest sposobem wyprowadzania danych i obiektów bazy danych do innej bazy danych, do arkusza kalkulacyjnego lub formatu pliku, aby inna baza danych, aplikacja lub program mogły używać tych danych i obiektów bazy danych. Eksportowanie jest podobne do kopiowania i wklejania. Dane można Eksportowanie jest sposobem wyprowadzania danych i obiektów bazy danych do innej bazy danych, do arkusza kalkulacyjnego lub formatu pliku, aby inna baza danych, aplikacja lub program mogły używać tych danych i obiektów bazy danych. Eksportowanie jest podobne do kopiowania i wklejania. Dane można obiektów bazy danych z bazy danych Access lub projektu Access’a można eksportować do innej bazy danych lub projektu Access. 44 Eksportowanie obiektów bazy danych Nie można eksportować diagramów bazy danych (diagram bazy danych: Graficzna reprezentacja dowolnej części schematu bazy danych. Może to być pełny lub częściowy obraz struktury bazy danych. Obejmuje on tabele, zawarte w nich kolumny oraz relacje między tabelami.) do projektu programu Access lub do bazy danych programu Access. Nie można eksportować kwerend ani relacji z bazy danych programu Access do projektu programu Access. 45 W wypadku eksportowania danych do dokumentu XML można eksportować tabelę główną i dowolne tabele pokrewne. W wypadku eksportowania do innej bazy danych można eksportować jednocześnie tylko jeden obiekt. Jeśli do bazy danych ma zostać wyeksportowanych kilka obiektów, należy otworzyć bazę docelową i importować obiekty. 46 Gdy eksportowany jest obiekt z innej bazy danych, niekiedy trzeba eksportować również obiekty powiązane, aby obiekt ten działał. Na przykład źródłem danychraportu może być kwerenda, która może być oparta na relacji między dwiema tabelami 47 Dane eksportowane do HTML Podczas eksportowania strony dostępu do danych (strona dostępu do danych: Publikowana z programu Access strona sieci Web, która ma połączenie z bazą danych. Na stronie dostępu do danych można wyświetlać, dodawać i edytować dane przechowywane w bazie danych oraz operować nimi. Strona może również zawierać dane z innych źródeł, takich jak program Excel.), eksportowane jest tylko łącze do odpowiedniego pliku HTML (HTML: Standardowy język znakowania informacji używany w przypadku dokumentów w sieci World Wide Web. W języku HTML używane są tagi, które wskazują, jak przeglądarki sieci Web mają wyświetlać elementy strony, takie jak tekst i grafika, i jak mają odpowiadać na akcje użytkownika.). Plik HTML pozostaje w tym samym miejscu, co oznacza, że istnieją dwie strony wskazujące ten sam plik HTML. Jeśli nie jest to pożądane rozwiązanie, należy zapisać jedną ze stron dostępu do danych pod inną nazwą i podać inną lokalizację dla nowego pliku HTML. W przypadku programu Access 2002 można użyć Kreatora transferu bazy danych do utworzenia nowej bazy danych SQL Server i eksportowania obiektów z istniejącej bazy danych Access 48 Przesyłanie pocztą obiektów bazy danych • Dane wyjściowe obiektu bazy danych można przesłać pocztą email, dołączając je do wiadomości poczty elektronicznej w kilku różnych formatach plików, w tym w formacie programu Microsoft Excel (.xls), Rich Text Format (.rtf), formacie tekstowym MS-DOS (.txt), HTML (.html), IDC/HTX (pliki IDC/HTX: Program Microsoft Internet Information Server używa plików IDC i HTX do pobierania danych ze źródła danych ODBC i formatowania ich jako dokumentu HTML.), ASP (Active Server Page (ASP): Plik zawierający osadzone skrypty po stronie serwera, który jest wykonywany na serwerze oraz wysyłany na kliencką przeglądarkę sieci Web i wyświetlany w niej jako standardowy plik HTML. ) i w formacie stron dostępu do danych (.html). Stronę dostępu do danych można również wysłać jako treść wiadomości e-mail. • Aby wysłać obiekt bazy danych pocztą elektroniczną, potrzebny jest program Microsoft Outlook, Microsoft Exchange, Microsoft Mail lub inna aplikacja poczty elektronicznej, która obsługuje standard Messaging Application Programming Interface (MAPI). 49 Exportowanie danych na stronę Web • • • • Są cztery sposoby tworzenia strony Web przy użyciu danych lub obiektów bazy danych Microsoft Access: W przeglądarce sieci Web obsługującej dynamiczny język HTML (DHTML: Rozszerzenie języka HTML (Hypertext Markup Language) dodające multimedia, dostęp do baz danych i model obiektowy, których programy mogą używać do zmiany stylów i atrybutów elementów strony (obiektów) oraz do zastępowania istniejących elementów (obiektów) nowymi.)w wersji 4.0 lub nowszy można używać stron dostępu do danych Strony dostępu do danych nie są wyprowadzane lecz tworzone jako obiekty bazy danych, które zawierają skrót do odpowiedniego pliku HTML danej strony dostępu do danych. Stron dostępu do danych używa się do przeglądania, edycji, aktualizacji, usuwania, filtrowania, grupowania i sortowania danych dynamicznych z bazy danych Microsoft Access lub z bazy danych Microsoft SQL Server. Z tabel, kwerend i formularzy można wyprowadzać pliki HTML generowane przez serwer (zawartość HTML generowana przez serwer: Plik stron ASP (Active Server Pages) lub IDC/HTX, stanowiący dane wyjściowe tabeli, kwerendy lub formularza, połączony ze źródłem danych ODBC i przetwarzany przez program Internet Information Server, który dynamicznie tworzy pliki HTML tylko do odczytu.) albo ASP (Active Server Page (ASP): Plik zawierający osadzone skrypty po stronie serwera, który jest wykonywany na serwerze oraz wysyłany na kliencką przeglądarkę sieci Web i wyświetlany w niej jako standardowy plik HTML. ), albo IDC/HTX (pliki IDC/HTX: Program Microsoft Internet Information Server używa plików IDC i HTX do pobierania danych ze źródła danych ODBC i formatowania ich jako dokumentu HTML.). W przeglądarce sieci Web pliki HTML generowane przez serwer wyświetlane są w formacie tabeli. Plików HTML generowanych przez serwer należy używać wtedy, kiedy chce się korzystać z dowolnej przeglądarki sieci Web, dane ulegają częstym zmianom lub zachodzi potrzeba oglądania dynamicznych danych w tabeli połączonej ze źródłem danych ODBC (źródło danych ODBC: Dane i informacje niezbędne do uzyskania dostępu do danych ODBC z programów i baz danych obsługujących protokół Open Database Connectivity (ODBC).), lecz nie ma potrzeby ich aktualizacji czy modyfikacji. Statyczne pliki HTML można tworzyć z tabel, kwerend, formularzy i raportów. W przeglądarce sieci Web raporty są wyświetlane w formacie raportu, a tabele, kwerendy i formularze są wyświetlane w formacie arkusza danych. Statycznych plików HTML należy używać wtedy, kiedy chce się korzystać z dowolnej przeglądarki Web, która obsługuje język HTML w wersji 3.2 lub nowszej, a dane zmieniają się rzadko. Formularz lub raport można zapisać jako stronę dostępu do danych przy użyciu polecenia Zapisz jako w menu Plik. Dzięki temu można używać formularza lub raportu jako strony sieci Web. 50 A oto jeden z tych sposobów zastosowany w praktyce 51 Eksportowanie lub wymiana danych z programem Microsoft Word lub z innym edytorem tekstów. Są trzy sposoby korzystania z danych programu Microsoft Access przy użyciu edytorów tekstów: • W przypadku bazy danych Access można użyć kreatora korespondencji seryjnej programu Microsoft Word do utworzenia w programie Microsoft Word 2002 dokumentu korespondencji seryjnej, który jest połączony z danymi programu Microsoft Access 2002. Po utworzeniu połączenia można w dowolnej chwili otworzyć dokument w programie Microsoft Word, aby wydrukować nową serię formularzy listów lub etykiet z użyciem bieżących danych w programie Microsoft Access. • Do dowolnej wersji programu Microsoft Word można eksportować dane programu Microsoft Access w celu utworzenia pliku danych źródłowych, który może być używany z funkcją korespondencji seryjnej programu Word. • Wyprowadzony arkusz danych, formularz lub raport można zapisać jako plik w formacie Rich Text Format (.rtf) lub jako plik tekstowy (.txt). Plik Rich Text Format zachowuje formatowanie, takie jak czcionki i style, i może być otwierany za pomocą programu Microsoft Word i innych edytorów tekstów i programów do składu 52 komputerowego dostępnych w systemie Microsoft Windows. Oto jeden z tych trzech sposobów 53 Eksportowanie do programu Microsoft Excel lub do innego programu arkusza kalkulacyjnego Są trzy sposoby używania danych programu Microsoft Access w programie Microsoft Excel lub w innym arkuszu kalkulacyjnym: • • • Arkusz danych można wyeksportować jako niesformatowane dane do programu Microsoft Excel lub do innego programu arkusza kalkulacyjnego. Wyprowadzony arkusz danych, formularz lub raport można zapisać bezpośrednio jako plik programu Excel (.xls) lub jako arkusz kalkulacyjny. W ten sposób zostanie zachowana większość formatowania, na przykład jak czcionki i kolory. Poziomy grupowania (poziom grupy: Głębokość, do której grupa w raporcie lub na stronie dostępu do danych jest zagnieżdżona wewnątrz innych grup. Grupy są zagnieżdżone, gdy zestaw rekordów jest pogrupowany według więcej niż jednego pola, wyrażenia lub źródła rekordów grupy.) raportu są zapisywane jako poziomy konspektu programu Microsoft Excel, a formularz jest zapisywany jako tabela danych. Dane z tabeli, kwerendy/widoku, arkusza danych lub raportu można eksportować do pliku XML, który następnie można zaimportować do programu Excel . 54 Formularz wyeksportowany do pliku .xls. 55 Automatyzacja operacji eksportowania Aby uprościć często wykonywane operacje eksportowania, można je zautomatyzować, tworząc makro lub procedurę w języku Visual Basic for Applications. Jest to przydatne na przykład wtedy, gdy dane są regularnie eksportowane lub jeśli budowana jest witryna sieci Web za pomocą wielu obiektów bazy danych. 56 Specyfikacje importu/eksportu i pliki Schema.ini — informacje Specyfikacja importu/eksportu zawiera takie informacje, jak format pliku, kolejność dat czy formaty liczb używane przez program Microsoft Access do importowania lub eksportowania plików tekstowych o stałej szerokości lub rozdzielanych. Specyfikacja importu/eksportu jest przechowywana pod domyślną nazwą: NazwaPliku_ImportSpec lub NazwaPliku_ExportSpec w bazie danych, do której jest wykonywany import lub z której jest wykonywany eksport. Aby utworzyć specyfikację importu/eksportu, należy użyć Kreatora importu tekstu lub Kreatora eksportu tekstu. Specyfikacji importu/eksportu należy używać, planując powtarzanie importu do tej samej tabeli, eksportowanie do tego samego pliku lub automatyzację procesu importu lub eksportu. Alternatywnie można skorzystać z pliku Schema.ini w programie Microsoft Visual Basic w celu zapewnienia jeszcze szerszej kontroli nad danymi w pliku tekstowym, na przykład w celu określenia specjalnych formatów waluty albo obsługi zmiennoprzecinkowych typów danych. Plik Schema.ini jest plikiem tekstowym zawierającym wpisy, które mają znaczenie nadrzędne względem domyślnych ustawień sterownika tekstu w rejestrze systemu Windows. Plik Schema.ini powinien być przechowywany w tym samym folderze co importowany lub eksportowany plik tekstowy i zawsze musi nazywać się Schema.ini. 57 ODBC 58 W programie Microsoft Access można importować ,eksportować lub łączyć dane z wielu różnych formatów baz danych, arkuszy kalkulacyjnych i plików tekstowych. Służy do tego albo wbudowany sterownik programu, albo sterownik ODBC (Open Database Connectivity (ODBC): Standardowa metoda współużytkowania danych między bazami danych i programami. W celu uzyskania dostępu do danych zewnętrznych sterowniki ODBC używają standardowego języka Structured Query Language (SQL).). Sterowniki wbudowane Program Access zawiera sterowniki wbudowane, które umożliwiają importowanie, eksportowanie lub łączenie danych następujących typów: inne bazy danych programu Microsoft Access, projekty programu Microsoft Access, Paradox, dBASE, Microsoft Excel, arkusze kalkulacyjne Lotus 1-2-3, Microsoft Exchange, Microsoft Outlook, pliki tekstowe o stałej szerokości, pliki tekstowe rozdzielane i pliki HTML. Po zainstalowaniu wbudowanego sterownika dla określonego typu danych, typ ten jest dostępny w oknach dialogowych Exportowanie, Importowanie i Łącze. Wszystkie sterowniki wbudowane są instalowane automatycznie podczas instalacji programu Access. Można także zainstalować na komputerze użytkownika sterowniki ODBC dla wyżej wymienionych produktów, lecz firma Microsoft zaleca używanie odpowiedniego sterownika wbudowanego, jeśli jest dostępny. Sterowniki ODBC Sterowników ODBC można używać do połączenia z bazami danych Microsoft SQL Server, bazami danych Microsoft FoxPro i danymi z innych programów, zawierających 32-bitowe sterowniki zgodne ze standardem ODBC Level 1 do dostępu do ich plików danych. Program Microsoft Access automatycznie instaluje sterownik ODBC programu Microsoft SQL Server (Sqlsrv32.dll), sterownik ODBC programu Microsoft FoxPro (vfpodbc.dll), sterownik ODBC programu Oracle (msorcl32.dll) i niektóre pliki pomocnicze ODBC (pliki Pomocy i ikonę Źródła danych (ODBC) Panelu sterowania i Narzędzi administracyjnych). 59 ODBC jest standardem normującym sposób dostępu do baz danych. Standard ten określa, iż aplikacja komunikuje się z managerem ODBC, który z kolei odwołuje się do driverów ODBC, które dopiero potrafią porozumiewać się z konkretnym typem baz danych. Dzięki temu aplikacje można uniezależnić od używanej bazy danych oraz ułatwić pracę twórców baz danych, którzy nie muszą pisać sterowników czy bibliotek umożliwiających dostęp do swojej bazy dla różnych programów czy języków programowania. Z praktycznego punktu widzenia, ODBC dla programującego w VB jawi się jako zbiór funkcji udostępnianych przez Managera ODBC 60 Realacyjną bazą danych zarządzają SZBD (ang. DBMS - systemy zarządzania bazami danych), takie jak: Sybase, Oracle, MS SQL Server, Paradox, Access itd. Pomiędzy SZDB a aplikacją stosuje się interfejsy, które umożliwiają programową obsługę bazy. Takim standardowym interfejsem systemu operacyjnego Windows jest ODBC . Istnieją także implementacje ODBC na inne systemy operacyjne (Linux, Solaris). ODBC Windows umożliwia utworzenie własnej bazy danych, lub też udostępnia żródła danych z innych SZBD. Aby skorzystać z usług ODBC należy utworzyć żródło danych. Standardowo mamy dostęp do sterowników: MSAccess, DBase, Excel, FoxPro, Paradox. MS SQL server itd. Źródło danych (baza danych) składa się z prostych tabel - zbiorów rekordów. Bardziej skomplikowane struktury danych realizowane są poprzez realacje między tabelami, system kluczy. 61 Importowanie i łączenie danych ze źródeł danych ODBC Można importować lub łączyć dane z baz danych ODBC (baza danych ODBC: Baza danych, dla której dostarczony jest sterownik Open Database Connectivity (ODBC). Sterownika tego można używać do importowania, łączenia lub eksportowania danych.), takich jak Microsoft SQL Server i Visual FoxPro, a także z innych programów, które zawierają sterowniki zgodne ze standardem ODBC (Open Database Connectivity (ODBC): Standardowa metoda współużytkowania danych między bazami danych i programami. W celu uzyskania dostępu do danych zewnętrznych sterowniki ODBC używają standardowego języka Structured Query Language (SQL).) Level 1 do uzyskiwania dostępu do ich plików danych. W tym celu należy połączyć się z odpowiednim źródłem danych ODBC (źródło danych ODBC: Dane i informacje niezbędne do uzyskania dostępu do danych ODBC z programów i baz danych obsługujących protokół Open Database Connectivity (ODBC).). Do połączenia się ze źródłem danych ODBC potrzebny jest odpowiedni sterownik ODBC (sterownik Open Database Connectivity (ODBC): Plik programu używany do łączenia z określoną bazą danych. Każdy program bazy danych, taki jak Access lub dBASE, albo system zarządzania bazami danych, taki jak SQL Server, wymaga innego sterownika.) oraz zdefiniowana nazwa źródła danych. 62