Import danych z SQL Server do Excel-a

3-Lut-2012

Chociaż dla bazodanowca nie ma nic lepszego niż tabele z danymi czytane wprost z serwera, to jednak na szczęście nie wszyscy są bazodanoznawcami :). Niektórzy preferują Excel-a.

Jeżeli użytkownik posiada uprawnienia do czytania danych z serwera SQL, to może je sobie umieścić w Excelu, aby później zbudować na przykład tabelę przestawną lub wykres w oparciu o takie dane. W tym celu:

  1. Otwórz Excela
  2. Przejdź na kartę Dane, a następnie kliknij Dane zewnętrze –> Z innych źródeł –> Z programu SQL Server
  3. W oknie dialogowym Kreator połączenia danych podaj nazwę serwera, do którego należy sięgnąć.
  4. Określ jak ma przebiegać uwierzytelnienie użytkownika (zaufaj kontu Windows lub autoryzacja poprzez podanie nazwy i hasła)
  5. Kliknij Dalej
  6. W rozwijanej liście wybierz nazwę bazy danych, a następnie poniżej wybierz jeden z dostępnych widoków lub tabelę.
  7. Kolejne okno przedstawia podsumowanie dokonanych wyborów oraz, co ważniejsze umożliwia zapisanie w pliku odc parametrów zdefiniowanego połączenia do serwera (plik domyślnie będzie zapisany w Moich źródłach danych w Moich dokumentach, ale można zmienić jego lokalizację klikając Przeglądaj).
  8. Kliknij Zakończ
  9. Ostatnie pytanie dotyczy tego, gdzie zapisać pobierane dane, zwyczajowo wskazuje się na komórkę A1 bieżącego arkusza.

Po pobraniu danych, można zapisać skoroszyta, ale… można też nie zapisywać. To nie Prima Aprilis. W 7 kroku zapisano definicję połączenia do pliku odc. Ten plik zawiera w sobie parametry połączenia do SQL serwera. Na dodatek ten plik jest mały (nie zawiera danych tylko definicję połączenia) i dzięki temu także bezpieczny.

 Jeżeli skorzystano z uwierzytelnienia Windows, w pliku nic nie będzie o użytkowniku zapisane, a jeżeli wskazano uwierzytelnienie SQL, to w pliku jest tylko nazwa użytkownika… no chyba, że byłeś na tyle nierozsądny, że zapisałeś tam też hasło, ale to nie jest rozwiązanie zalecane.

 Jeśli Ty lub ktoś inny otworzy plik odc i zezwoli na zablokowaną zawartość to Excel jako program kliencki połączy się do SQL serwera i w arkuszu umieści… aktualne dane z tabeli z serwera SQL!

 

Dodaj komentarz:

Autor: Rafał Kraik