From 6bb08b9a77ab0230f5f529586c0eb37df4e9b305 Mon Sep 17 00:00:00 2001 From: emkael Date: Wed, 28 Feb 2018 22:51:19 +0100 Subject: First draft of BWS sniffing article --- src/_img/debugging-queries-to-bws/01-01.png | Bin 0 -> 49720 bytes src/_img/debugging-queries-to-bws/01-02.png | Bin 0 -> 43067 bytes src/_img/debugging-queries-to-bws/01-03.png | Bin 0 -> 56670 bytes src/_img/debugging-queries-to-bws/01-04.png | Bin 0 -> 44135 bytes src/_img/debugging-queries-to-bws/01-05.png | Bin 0 -> 41199 bytes src/_img/debugging-queries-to-bws/01-06.png | Bin 0 -> 44012 bytes src/_img/debugging-queries-to-bws/01-07.png | Bin 0 -> 41722 bytes src/_img/debugging-queries-to-bws/01-08.png | Bin 0 -> 47948 bytes src/_img/debugging-queries-to-bws/01-09.png | Bin 0 -> 38589 bytes src/_img/debugging-queries-to-bws/01-10.png | Bin 0 -> 55273 bytes src/_img/debugging-queries-to-bws/01-11.png | Bin 0 -> 58504 bytes src/_img/debugging-queries-to-bws/02-01.png | Bin 0 -> 139289 bytes src/_img/debugging-queries-to-bws/02-02.png | Bin 0 -> 64630 bytes src/_img/debugging-queries-to-bws/02-03.png | Bin 0 -> 42981 bytes src/_img/debugging-queries-to-bws/02-04.png | Bin 0 -> 57818 bytes src/_img/debugging-queries-to-bws/02-05.png | Bin 0 -> 32203 bytes src/_img/debugging-queries-to-bws/02-06.png | Bin 0 -> 52644 bytes src/_img/debugging-queries-to-bws/02-07.png | Bin 0 -> 55184 bytes src/_img/debugging-queries-to-bws/02-08.png | Bin 0 -> 47187 bytes src/_img/debugging-queries-to-bws/02-09.png | Bin 0 -> 44755 bytes src/_img/debugging-queries-to-bws/02-10.png | Bin 0 -> 47984 bytes src/_img/debugging-queries-to-bws/02-11.png | Bin 0 -> 53490 bytes src/_img/debugging-queries-to-bws/02-12.png | Bin 0 -> 33720 bytes src/_img/debugging-queries-to-bws/02-13.png | Bin 0 -> 33442 bytes src/_img/debugging-queries-to-bws/02-14.png | Bin 0 -> 39180 bytes src/_img/debugging-queries-to-bws/02-15.png | Bin 0 -> 21582 bytes src/_img/debugging-queries-to-bws/02-16.png | Bin 0 -> 23971 bytes src/_img/debugging-queries-to-bws/02-17.png | Bin 0 -> 23946 bytes src/_img/debugging-queries-to-bws/02-18.png | Bin 0 -> 21130 bytes src/_img/debugging-queries-to-bws/02-19.png | Bin 0 -> 23569 bytes src/_img/debugging-queries-to-bws/02-20.png | Bin 0 -> 21940 bytes src/_img/debugging-queries-to-bws/02-21.png | Bin 0 -> 57541 bytes src/_img/debugging-queries-to-bws/02-22.png | Bin 0 -> 56009 bytes src/_img/debugging-queries-to-bws/02-23.png | Bin 0 -> 74554 bytes src/_img/debugging-queries-to-bws/02-24.png | Bin 0 -> 56803 bytes src/_img/debugging-queries-to-bws/02-25.png | Bin 0 -> 73286 bytes src/_img/debugging-queries-to-bws/02-26.png | Bin 0 -> 65994 bytes src/_img/debugging-queries-to-bws/02-27.png | Bin 0 -> 37323 bytes src/_img/debugging-queries-to-bws/02-28.png | Bin 0 -> 53256 bytes src/_img/debugging-queries-to-bws/02-29.png | Bin 0 -> 60766 bytes src/_img/debugging-queries-to-bws/03-01.png | Bin 0 -> 43267 bytes src/_img/debugging-queries-to-bws/03-02.png | Bin 0 -> 25224 bytes src/_img/debugging-queries-to-bws/03-03.png | Bin 0 -> 35848 bytes src/_img/debugging-queries-to-bws/03-04.png | Bin 0 -> 44386 bytes src/_img/debugging-queries-to-bws/03-05.png | Bin 0 -> 61518 bytes src/_img/debugging-queries-to-bws/03-06.png | Bin 0 -> 53918 bytes src/_img/debugging-queries-to-bws/03-07.png | Bin 0 -> 88028 bytes src/_img/debugging-queries-to-bws/03-08.png | Bin 0 -> 80068 bytes src/_img/debugging-queries-to-bws/03-09.png | Bin 0 -> 69324 bytes .../2018/02/28/debugging-queries-to-bws.tpl | 129 +++++++++++++++++++++ 50 files changed, 129 insertions(+) create mode 100644 src/_img/debugging-queries-to-bws/01-01.png create mode 100644 src/_img/debugging-queries-to-bws/01-02.png create mode 100644 src/_img/debugging-queries-to-bws/01-03.png create mode 100644 src/_img/debugging-queries-to-bws/01-04.png create mode 100644 src/_img/debugging-queries-to-bws/01-05.png create mode 100644 src/_img/debugging-queries-to-bws/01-06.png create mode 100644 src/_img/debugging-queries-to-bws/01-07.png create mode 100644 src/_img/debugging-queries-to-bws/01-08.png create mode 100644 src/_img/debugging-queries-to-bws/01-09.png create mode 100644 src/_img/debugging-queries-to-bws/01-10.png create mode 100644 src/_img/debugging-queries-to-bws/01-11.png create mode 100644 src/_img/debugging-queries-to-bws/02-01.png create mode 100644 src/_img/debugging-queries-to-bws/02-02.png create mode 100644 src/_img/debugging-queries-to-bws/02-03.png create mode 100644 src/_img/debugging-queries-to-bws/02-04.png create mode 100644 src/_img/debugging-queries-to-bws/02-05.png create mode 100644 src/_img/debugging-queries-to-bws/02-06.png create mode 100644 src/_img/debugging-queries-to-bws/02-07.png create mode 100644 src/_img/debugging-queries-to-bws/02-08.png create mode 100644 src/_img/debugging-queries-to-bws/02-09.png create mode 100644 src/_img/debugging-queries-to-bws/02-10.png create mode 100644 src/_img/debugging-queries-to-bws/02-11.png create mode 100644 src/_img/debugging-queries-to-bws/02-12.png create mode 100644 src/_img/debugging-queries-to-bws/02-13.png create mode 100644 src/_img/debugging-queries-to-bws/02-14.png create mode 100644 src/_img/debugging-queries-to-bws/02-15.png create mode 100644 src/_img/debugging-queries-to-bws/02-16.png create mode 100644 src/_img/debugging-queries-to-bws/02-17.png create mode 100644 src/_img/debugging-queries-to-bws/02-18.png create mode 100644 src/_img/debugging-queries-to-bws/02-19.png create mode 100644 src/_img/debugging-queries-to-bws/02-20.png create mode 100644 src/_img/debugging-queries-to-bws/02-21.png create mode 100644 src/_img/debugging-queries-to-bws/02-22.png create mode 100644 src/_img/debugging-queries-to-bws/02-23.png create mode 100644 src/_img/debugging-queries-to-bws/02-24.png create mode 100644 src/_img/debugging-queries-to-bws/02-25.png create mode 100644 src/_img/debugging-queries-to-bws/02-26.png create mode 100644 src/_img/debugging-queries-to-bws/02-27.png create mode 100644 src/_img/debugging-queries-to-bws/02-28.png create mode 100644 src/_img/debugging-queries-to-bws/02-29.png create mode 100644 src/_img/debugging-queries-to-bws/03-01.png create mode 100644 src/_img/debugging-queries-to-bws/03-02.png create mode 100644 src/_img/debugging-queries-to-bws/03-03.png create mode 100644 src/_img/debugging-queries-to-bws/03-04.png create mode 100644 src/_img/debugging-queries-to-bws/03-05.png create mode 100644 src/_img/debugging-queries-to-bws/03-06.png create mode 100644 src/_img/debugging-queries-to-bws/03-07.png create mode 100644 src/_img/debugging-queries-to-bws/03-08.png create mode 100644 src/_img/debugging-queries-to-bws/03-09.png create mode 100644 template/content/2018/02/28/debugging-queries-to-bws.tpl diff --git a/src/_img/debugging-queries-to-bws/01-01.png b/src/_img/debugging-queries-to-bws/01-01.png new file mode 100644 index 0000000..6c8214f Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-01.png differ diff --git a/src/_img/debugging-queries-to-bws/01-02.png b/src/_img/debugging-queries-to-bws/01-02.png new file mode 100644 index 0000000..58d0800 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-02.png differ diff --git a/src/_img/debugging-queries-to-bws/01-03.png b/src/_img/debugging-queries-to-bws/01-03.png new file mode 100644 index 0000000..dbd84aa Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-03.png differ diff --git a/src/_img/debugging-queries-to-bws/01-04.png b/src/_img/debugging-queries-to-bws/01-04.png new file mode 100644 index 0000000..94c7d6b Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-04.png differ diff --git a/src/_img/debugging-queries-to-bws/01-05.png b/src/_img/debugging-queries-to-bws/01-05.png new file mode 100644 index 0000000..8e28813 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-05.png differ diff --git a/src/_img/debugging-queries-to-bws/01-06.png b/src/_img/debugging-queries-to-bws/01-06.png new file mode 100644 index 0000000..a8e5980 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-06.png differ diff --git a/src/_img/debugging-queries-to-bws/01-07.png b/src/_img/debugging-queries-to-bws/01-07.png new file mode 100644 index 0000000..af0f46f Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-07.png differ diff --git a/src/_img/debugging-queries-to-bws/01-08.png b/src/_img/debugging-queries-to-bws/01-08.png new file mode 100644 index 0000000..607cca0 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-08.png differ diff --git a/src/_img/debugging-queries-to-bws/01-09.png b/src/_img/debugging-queries-to-bws/01-09.png new file mode 100644 index 0000000..0c76272 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-09.png differ diff --git a/src/_img/debugging-queries-to-bws/01-10.png b/src/_img/debugging-queries-to-bws/01-10.png new file mode 100644 index 0000000..e9e6d2a Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-10.png differ diff --git a/src/_img/debugging-queries-to-bws/01-11.png b/src/_img/debugging-queries-to-bws/01-11.png new file mode 100644 index 0000000..52f722f Binary files /dev/null and b/src/_img/debugging-queries-to-bws/01-11.png differ diff --git a/src/_img/debugging-queries-to-bws/02-01.png b/src/_img/debugging-queries-to-bws/02-01.png new file mode 100644 index 0000000..d98a6af Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-01.png differ diff --git a/src/_img/debugging-queries-to-bws/02-02.png b/src/_img/debugging-queries-to-bws/02-02.png new file mode 100644 index 0000000..cb295c4 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-02.png differ diff --git a/src/_img/debugging-queries-to-bws/02-03.png b/src/_img/debugging-queries-to-bws/02-03.png new file mode 100644 index 0000000..6a94294 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-03.png differ diff --git a/src/_img/debugging-queries-to-bws/02-04.png b/src/_img/debugging-queries-to-bws/02-04.png new file mode 100644 index 0000000..af9a715 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-04.png differ diff --git a/src/_img/debugging-queries-to-bws/02-05.png b/src/_img/debugging-queries-to-bws/02-05.png new file mode 100644 index 0000000..69579d6 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-05.png differ diff --git a/src/_img/debugging-queries-to-bws/02-06.png b/src/_img/debugging-queries-to-bws/02-06.png new file mode 100644 index 0000000..e08adb4 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-06.png differ diff --git a/src/_img/debugging-queries-to-bws/02-07.png b/src/_img/debugging-queries-to-bws/02-07.png new file mode 100644 index 0000000..3396cad Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-07.png differ diff --git a/src/_img/debugging-queries-to-bws/02-08.png b/src/_img/debugging-queries-to-bws/02-08.png new file mode 100644 index 0000000..6e41970 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-08.png differ diff --git a/src/_img/debugging-queries-to-bws/02-09.png b/src/_img/debugging-queries-to-bws/02-09.png new file mode 100644 index 0000000..5ddcee9 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-09.png differ diff --git a/src/_img/debugging-queries-to-bws/02-10.png b/src/_img/debugging-queries-to-bws/02-10.png new file mode 100644 index 0000000..ce9ed17 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-10.png differ diff --git a/src/_img/debugging-queries-to-bws/02-11.png b/src/_img/debugging-queries-to-bws/02-11.png new file mode 100644 index 0000000..fabac15 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-11.png differ diff --git a/src/_img/debugging-queries-to-bws/02-12.png b/src/_img/debugging-queries-to-bws/02-12.png new file mode 100644 index 0000000..aaa6bdb Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-12.png differ diff --git a/src/_img/debugging-queries-to-bws/02-13.png b/src/_img/debugging-queries-to-bws/02-13.png new file mode 100644 index 0000000..f470664 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-13.png differ diff --git a/src/_img/debugging-queries-to-bws/02-14.png b/src/_img/debugging-queries-to-bws/02-14.png new file mode 100644 index 0000000..28cb351 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-14.png differ diff --git a/src/_img/debugging-queries-to-bws/02-15.png b/src/_img/debugging-queries-to-bws/02-15.png new file mode 100644 index 0000000..1a12438 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-15.png differ diff --git a/src/_img/debugging-queries-to-bws/02-16.png b/src/_img/debugging-queries-to-bws/02-16.png new file mode 100644 index 0000000..b4a5d79 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-16.png differ diff --git a/src/_img/debugging-queries-to-bws/02-17.png b/src/_img/debugging-queries-to-bws/02-17.png new file mode 100644 index 0000000..7675104 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-17.png differ diff --git a/src/_img/debugging-queries-to-bws/02-18.png b/src/_img/debugging-queries-to-bws/02-18.png new file mode 100644 index 0000000..096c570 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-18.png differ diff --git a/src/_img/debugging-queries-to-bws/02-19.png b/src/_img/debugging-queries-to-bws/02-19.png new file mode 100644 index 0000000..35b29a1 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-19.png differ diff --git a/src/_img/debugging-queries-to-bws/02-20.png b/src/_img/debugging-queries-to-bws/02-20.png new file mode 100644 index 0000000..46bc582 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-20.png differ diff --git a/src/_img/debugging-queries-to-bws/02-21.png b/src/_img/debugging-queries-to-bws/02-21.png new file mode 100644 index 0000000..0e6b320 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-21.png differ diff --git a/src/_img/debugging-queries-to-bws/02-22.png b/src/_img/debugging-queries-to-bws/02-22.png new file mode 100644 index 0000000..904e41a Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-22.png differ diff --git a/src/_img/debugging-queries-to-bws/02-23.png b/src/_img/debugging-queries-to-bws/02-23.png new file mode 100644 index 0000000..704a29e Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-23.png differ diff --git a/src/_img/debugging-queries-to-bws/02-24.png b/src/_img/debugging-queries-to-bws/02-24.png new file mode 100644 index 0000000..ae33e47 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-24.png differ diff --git a/src/_img/debugging-queries-to-bws/02-25.png b/src/_img/debugging-queries-to-bws/02-25.png new file mode 100644 index 0000000..75f0ed9 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-25.png differ diff --git a/src/_img/debugging-queries-to-bws/02-26.png b/src/_img/debugging-queries-to-bws/02-26.png new file mode 100644 index 0000000..9744c96 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-26.png differ diff --git a/src/_img/debugging-queries-to-bws/02-27.png b/src/_img/debugging-queries-to-bws/02-27.png new file mode 100644 index 0000000..ace05a9 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-27.png differ diff --git a/src/_img/debugging-queries-to-bws/02-28.png b/src/_img/debugging-queries-to-bws/02-28.png new file mode 100644 index 0000000..7e95d87 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-28.png differ diff --git a/src/_img/debugging-queries-to-bws/02-29.png b/src/_img/debugging-queries-to-bws/02-29.png new file mode 100644 index 0000000..ece1032 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/02-29.png differ diff --git a/src/_img/debugging-queries-to-bws/03-01.png b/src/_img/debugging-queries-to-bws/03-01.png new file mode 100644 index 0000000..fa226e8 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-01.png differ diff --git a/src/_img/debugging-queries-to-bws/03-02.png b/src/_img/debugging-queries-to-bws/03-02.png new file mode 100644 index 0000000..5a7c113 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-02.png differ diff --git a/src/_img/debugging-queries-to-bws/03-03.png b/src/_img/debugging-queries-to-bws/03-03.png new file mode 100644 index 0000000..4a0abba Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-03.png differ diff --git a/src/_img/debugging-queries-to-bws/03-04.png b/src/_img/debugging-queries-to-bws/03-04.png new file mode 100644 index 0000000..b6bdad3 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-04.png differ diff --git a/src/_img/debugging-queries-to-bws/03-05.png b/src/_img/debugging-queries-to-bws/03-05.png new file mode 100644 index 0000000..5638466 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-05.png differ diff --git a/src/_img/debugging-queries-to-bws/03-06.png b/src/_img/debugging-queries-to-bws/03-06.png new file mode 100644 index 0000000..9075061 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-06.png differ diff --git a/src/_img/debugging-queries-to-bws/03-07.png b/src/_img/debugging-queries-to-bws/03-07.png new file mode 100644 index 0000000..85929d9 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-07.png differ diff --git a/src/_img/debugging-queries-to-bws/03-08.png b/src/_img/debugging-queries-to-bws/03-08.png new file mode 100644 index 0000000..bb6a623 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-08.png differ diff --git a/src/_img/debugging-queries-to-bws/03-09.png b/src/_img/debugging-queries-to-bws/03-09.png new file mode 100644 index 0000000..12532b9 Binary files /dev/null and b/src/_img/debugging-queries-to-bws/03-09.png differ diff --git a/template/content/2018/02/28/debugging-queries-to-bws.tpl b/template/content/2018/02/28/debugging-queries-to-bws.tpl new file mode 100644 index 0000000..9a1ddc6 --- /dev/null +++ b/template/content/2018/02/28/debugging-queries-to-bws.tpl @@ -0,0 +1,129 @@ + + +
+
+

Artykuł stanowi instrukcję konfiguracji narzędzi i plików, które pozwolą na zrzut i analizę zapytań SQL wykonywanych na bazach danych oprogramowania Bridgemate.

+

+ Wymagane oprogramowanie to: +

    +
  • Microsoft Access, kompatybilny z plikami formatu Access2000 (tu użyto Accessa 2013)
  • +
  • serwer SQL Server (tu: SQL Server Express 2014)
  • +
  • SQL Server Import and Export Data (tu: z pakietu wersji 2014)
  • +
  • SQL Server Profiler (tu: w wersji 17)
  • +
+

+

Operacje przedstawione w poniższym opisie prawdopodobnie są wykonalne z dowolnym innym serwerem bazodanowym, ale artykuł opisuje SQL Server ze względu na obecność w systemach Windows gotowych sterowników bazodanowych do SQL Server kompatybilnych z bazami Accessa, oraz dostępność przyjaznych użytkownikowi narzędzi do analizy operacji serwera baz danych.

+
+
+ +
+
+

Zarys koncepcji

+
+
+

+ Po przejrzeniu różnych porad i odpowiedzi znalezionych w Internecie, nie udało mi się skutecznie skorzystać żadnej z metod przeznaczonych dla konkretnych sterowników bazodanowych (Jet/ODBC). +

+

+ Podstawowy pomysł miał więc polegać na przekierowaniu całej komunikacji z plikiem BWS przez pośredniczący serwer bazodanowy, dla którego można zastosować dowolne narzędzia analizy wykonywanych operacji. Pierwotna koncepcja rysowała się więc następująco: +

    +
  1. Utworzyć bazę danych SQL Server w trybie tzw. linked server, mapując całą jej zawartość na oryginalny BWS.
  2. +
  3. Utworzyć pusty plik Accessa 2000 i połączyć w nim tabele z tabelami tak utworzonej bazy danych.
  4. +
  5. Wszelkie programy używające pliku BWS kierować do tego drugiego pliku BWS, zamiast oryginału.
  6. +
+ W ten sposób wszystkie operacje wykonywałyby się na zawartości oryginalnego pliku, ale można by je łatwo przeanalizować podczas przejścia przez serwer bazy danych. +

+

+ Niestety, prawidłowa konfiguracja linked server kierującego do pliku BWS mnie przerosła, procedura została więc zmodyfikowana: +

    +
  1. Zaimportować całą zawartość oryginalnego pliku BWS do bazy danych SQL Server.
  2. +
  3. A dalej zgodnie z planem - utworzyć plik Accessa łączący się do tej bazy danych i korzystaćz niego.
  4. +
+

+

Zaletą tego podejścia jest zachowanie oryginalnej zawartości pliku BWS - więc łatwa powtarzalność testów. Do tego metoda uniezależnia się od wyboru konkretnego serwera bazy danych, choć pozostałem przy SQL Server.

+
+
+ +
+
+

Import zawartości BWS do SQL Server

+
+ +
+ +
+
+

Połączenie nowego pliku Access z bazą SQL Server

+
+
+
    +
  1. Tworzymy nową bazę danych Access dla komputerów stacjonarnych, wybieramy docelowe ścieżkę i format.
  2. +
  3. Wybieramy format Access 2000, zatwierdzamy nazwę pliku (na razie może pozostać *.mdb).
  4. +
  5. Zamykamy domyślną tabelę roboczą, przechodzimy do wstęgi Dane zewnętrzne, wybieramy pozycję Baza danych ODBC.
  6. +
  7. Nie importujemy kopii danych z SQL Server, będziemy tworzyć tabele połączone.
  8. +
  9. W zakładce Komputerowe źródło danych skonfigurujemy źródło danych z naszej bazy SQL Server.
  10. +
  11. Bez uprawnień administracyjnych jesteśmy w stanie zdefiniować źródło jedynie dla aktualnego użytkownika, to wystarczy.
  12. +
  13. Określamy komunikację przy użyciu natywnego sterownika SQL Server.
  14. +
  15. Nadajemy źródłu nazwę i opis, a także kierujemy je do naszej instancji SQL Server.
  16. +
  17. Ustawiamy dane uwierzytelnienia do serwera (jak przy imporcie z oryginalnego BWS).
  18. +
  19. Zmieniamy domyślną bazę danych (Change the default database to:) na naszą kopię oryginalnego pliku BWS.
  20. +
  21. Kończymy kreator z domyślnymi parametrami w ostatniej karcie.
  22. +
  23. Możemy jeszcze przetestować połączenie z naszą bazą, na wypadek gdybyśmy np. określili złą lokalizację serwera i nazwę instancji SQL Server.
  24. +
  25. Wybieramy tak utworzone źródło danych. W przyszłości nie ma potrzeby tworzenia nowego źródła z każdym importem, możemy skierować nasze źródło na inną bazę danych poprzez aplet: Panel Sterowania -> Narzędzia Administracyjne -> Źródła danych (ODBC), przeprowadzając ponowną konfigurację, z wyborem innej domyślnej bazy danych.
  26. +
  27. Wybieramy wszystkie tabele zaimportowane wcześniej z pliku BWS poza Settings.
  28. +
  29. Następnie Access pyta nas o klucze podstawowe wszystkich tabel. Ich ustawienie jest niezbędne do tego, by tak spreparowany plik Access mógł być używany nie tylko w trybie do odczytu, ale i do zapisu. Przeważnie kluczem podstawowym jest kolumna ID...
  30. +
  31. ...poza tabelami HandEvaluation, HandRecord, PlayerNumbers, RoundData i Tables.
  32. +
  33. Zmieniamy nazwy zaimportowany tabel połączonych, usuwając przedrostki wynikające z przestrzeni nazw tabel w bazie danych.
  34. +
  35. Po tej operacji powinniśmy mieć w pliu z powrotem oryginalne nazwy tabel z pliku BWS.
  36. +
  37. Możemy podejrzeć kopie oryginalnych danych, pobranych z SQL Server.
  38. +
  39. Pozostaje skopiować oryginalną tabelę Settings. Tabeli tej nie dało się zaimportować jako połączonej z SQL Server - jedyny klucz podstawowy, jaki może ona posiadać (Section), niekoniecznie znajduje się zawsze w pliku BWS, poza tym zawiera pola typu bit, które kiepsko się mapują między silnikami bazodanowymi. Oznacza to, że nie będziemy w stanie podsłuchać zapytań do tabeli Settings, ale rzadko kiedy są one nietrywialne i jeśli nie zajmujemy się konkretnie zapisem i odczytem ustawień (np. podziałem ustawień między ustawieniami definiowanymi przez BWS a definiwanymi przez BCS), nie będzie nam to potrzebne.
  40. +
  41. We wstędze Dane zewnętrzne wybieramy źródło Access.
  42. +
  43. W oknie wyboru pliku musi ręcznie wymusić wyświetlenie wszystkich plików w katalogu (nasz BWS ma innerozszerzenie niż Access się spodziewa).
  44. +
  45. Wybieramy opcję importu kopii tabeli. Moglibyśmy utworzyć kolejną tabelę połączoną, ale wówczas modyfikowalibyśmy oryginalne dane.
  46. +
  47. Wybieramy tabelę Settings.
  48. +
  49. Kończymy kreator.
  50. +
  51. Mamy teraz gotowy kompletny interfejs identyczny z oryginalnym plikiem BWS (z dokładnością do widoków danych). Możemy zmienić mu rozszerzenie na *.bws.
  52. +
+
+
+ +
+
+

Podsłuch zapytań w akcji

+
+ +
-- cgit v1.2.3