1. Jak importować dane pomiędzy platformami
W tym artykule dowiesz się w jaki sposób pobierać dane z systemów bazodanowych takich jak SQL Server lub Oracle DB do mniejszych platform jak Excel lub Access. Na początku powstaje zasadnicze pytanie – po co w ogóle to robić, skoro profesjonalna baza danych jest najlepszym miejscem przechowywania danych? Z reguły takie działanie ma sens, jeśli w mniejszej platformie chcesz pokazać wynik np w postaci raportu lub analizy. Całość działania sprowadza się do skorzystania ze standardowych funkcjonalności baz danych, systemu Windows oraz platformy docelowej jak np Excel lub Access. Od czego w takim razie zacząć? Od posiadania odpowiednich dostępów do Twojej bazy danych oraz konfiguracji połączenia ODBC z Twoją bazą. Warto dodać, że jest wiele możliwych sposobów, by połączyć się z bazami. My skoncentrujemy się na połączeniu ODBC. Sposób połączenia z Excel bez użycia ODBC pokazany jest na końcu tego artykułu.
2. Ustawienia DSN dla ODBC – Jak skonfigurować połączenie
Najważniejszą sprawą na wstępie jest konfiguracja ustawień ODBC bazy danych SQL Server. Dodam, że takie samo działanie może być przeprowadzone także dla dowolnych baz danych jak Oracle, MySQL, PostgreeSQL itp. Jeśli interesuje Cię podobny import danych z innych platform bazodanowych niż SQL Server, jedyne co powinieneś zrobić, to zainstalować sterowniki ODBC tych właśnie baz danych. Reszta konfiguracji wygląda analogicznie.
By otworzyć konfigurację połączeń ODBC na swoim komputerze, wpisz w menu Start ODBC. Jeśli nie masz uprawnień, by otworzyć program skorzystaj z prostego triku i zamiast ODBC wywołaj program ODBCAD32. W znacznej większości przypadków ten trik zadziała.
Poniżej przedstawiam przykład konfiguracji dla bazy SQL Server 2017. Sposób działa także z poprzednimi wersjami tej bazy. Jeśli jesteś już w konfiguracji połączeń ODBC kliknij Dodaj, by dodać nowe połączenie. Z listy sterowników wybierz SQL Server.
W kolejnym oknie, które się pojawi ustaw nazwę połączenia oraz wybierz serwer, z którego będziesz korzystał. Jeśli jest to sewer zewnętrzny, wprowadź jego adres.
W kolejnym kroku wybierz użytkownika, za pomocą którego będziesz się łączył z bazą. W moim przypadku będzie to połączenie domenowe. Jeśli w Twoim wypadku jest to połączenie z loginem i hasłem, wybierze uwierzytelnienie za pomocą identyfikatora logowania.
W kolejnym kroku wybierz docelową bazę na serwerze, z którą chcesz się połączyć.
To już wszytko. Jedyne, co warto teraz zrobić to przetestować połączenie. Po przetestowaniu powinieneś otrzymać komunikat o powodzeniu testu.
3. Import danych z ODBC do Excel
Zrobiłeś już najważniejsze, a więc skonfigurowałeś połączenie ODBC do swojej bazy danych. Teraz jedyne, co powinieneś zrobić to połączyć się za pomocą tego połączenia do danych. W jaki sposób to zrobić? W Excel w zakładce Dane wybierz ikonę Z innych źródeł. Następnie wybierz z kreatora połączeń danych.
W kreatorze połączeń danych wybierz ODBC DSN. Powinno wyświetlić się znane Ci już okno, w którym wybierzesz utworzone i skonfigurowane wcześniej połączenie ODBC.
Jedyne, co teraz powinieneś zrobić to wybrać z wyświetlonej listy tabelę, bądź widok, który chcesz zaimportować.
Wszytko jest już prawie gotowe. W kolejnych wyświetlanych oknach wybierz arkusz lub inną lokalizację, do której chcesz zaimportować swoje dane z SQL Server. We właściwościach możesz także zapisać hasło, by nie wprowadzać go za każdym razem przy imporcie danych. Nie ma oczywiście takiej potrzeby jeśli wybrałeś połączenie domenowe z bazą.
4. Import danych z ODBC do Access
W przypadku Access sprawa jest jeszcze prostsza. Jedyne, co trzeba zrobić to w zakładce Dane zewnętrzne wybrać ikonę Bazy danych ODBC. Postępujemy tutaj zgodnie z instrukcjami kreatora. Co ważne jeśli w pierwszym oknie kreatora wybierzesz opcję Połącz ze źródłem danych tworząc tabelę połączoną, będziesz mógł także insertować i updateować tabele w bazie SQL Server poprzez Access.
W kolejnym kroku kreatora wybieramy nasze wcześniej utworzone połączenie ODBC
W następnym kroku wybieramy tabelę lub widok, który chcemy zaimportować. Możemy także zapisać hasło połączenia, jeśli chcemy w przyszłości zautomatyzować proces importu danych. Gotowe.
5. Połączenia z Excel inne niż ODBC.
Jak wcześniej wspomniałem połączenia ODBC używamy, gdyż jest ono dla nas wygodne. Raz skonfigurowane możemy zastosować zarówno w Excel, Access, a także do innych baz danych. Możemy dla przykładu podlinkować połączenie ODBC bazy Oracle do SQL Server i korzystać z danych na jednej platformie bazodanowej. Jeśli chodzi o połączenia inne niż ODBC, Excel posiada odpowiednie funkcjonalności, za pomocą których możemy ustanowić takie połączenie.
Jeśli chcesz skorzystać z takiego połączenia, jedyne, co trzeba zrobić to wejść w zakładkę Dane, następnie w ikonie Pobieranie danych zewnętrznych wybrać opcję Z innych źródeł i następnie z programu SQL Server. Wprowadzamy nazwę serwera, a następnie dane do logowania, a więc login i hasło, jeśli logujemy się w inny sposób, niż za pomocą poświadczeń domenowych.
Wybieramy widok lub tabelę, którą chcemy pobrać. Gotowe.
Jak zautomatyzować pobieranie danych? Automatyzacja to podstawa. Jeśli chcesz zautomatyzować pobieranie danych, a pobierasz je do Excel lub Access, zachęcam do zapoznania się z krótkimi artykułem dotyczącymi automatyzacji pobierania danych przez Excel: Odświeżanie połączeń danych Excel.
Jeśli chciałbyś poszerzyć swoją wiedzę na temat SQL Server, zachęcam do zapoznania się z kursem SQL Server, który zamieszczam pod tym adresem: Kurs SQL Server. Odsyłam także do innych przykładów dla SQL Server, Excel oraz przykładów użycia VBA.