summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2018-02-28 22:51:19 +0100
committeremkael <emkael@tlen.pl>2018-02-28 22:51:19 +0100
commit6bb08b9a77ab0230f5f529586c0eb37df4e9b305 (patch)
treeae2156469854cc1dd2c7953d0b9fa4df07445d4f
parent9a23f4c26fc4c73b9a682f7c2eff5e77c903890e (diff)
First draft of BWS sniffing article
-rw-r--r--src/_img/debugging-queries-to-bws/01-01.pngbin0 -> 49720 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-02.pngbin0 -> 43067 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-03.pngbin0 -> 56670 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-04.pngbin0 -> 44135 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-05.pngbin0 -> 41199 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-06.pngbin0 -> 44012 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-07.pngbin0 -> 41722 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-08.pngbin0 -> 47948 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-09.pngbin0 -> 38589 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-10.pngbin0 -> 55273 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/01-11.pngbin0 -> 58504 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-01.pngbin0 -> 139289 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-02.pngbin0 -> 64630 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-03.pngbin0 -> 42981 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-04.pngbin0 -> 57818 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-05.pngbin0 -> 32203 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-06.pngbin0 -> 52644 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-07.pngbin0 -> 55184 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-08.pngbin0 -> 47187 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-09.pngbin0 -> 44755 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-10.pngbin0 -> 47984 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-11.pngbin0 -> 53490 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-12.pngbin0 -> 33720 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-13.pngbin0 -> 33442 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-14.pngbin0 -> 39180 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-15.pngbin0 -> 21582 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-16.pngbin0 -> 23971 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-17.pngbin0 -> 23946 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-18.pngbin0 -> 21130 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-19.pngbin0 -> 23569 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-20.pngbin0 -> 21940 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-21.pngbin0 -> 57541 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-22.pngbin0 -> 56009 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-23.pngbin0 -> 74554 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-24.pngbin0 -> 56803 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-25.pngbin0 -> 73286 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-26.pngbin0 -> 65994 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-27.pngbin0 -> 37323 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-28.pngbin0 -> 53256 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/02-29.pngbin0 -> 60766 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-01.pngbin0 -> 43267 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-02.pngbin0 -> 25224 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-03.pngbin0 -> 35848 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-04.pngbin0 -> 44386 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-05.pngbin0 -> 61518 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-06.pngbin0 -> 53918 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-07.pngbin0 -> 88028 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-08.pngbin0 -> 80068 bytes
-rw-r--r--src/_img/debugging-queries-to-bws/03-09.pngbin0 -> 69324 bytes
-rw-r--r--template/content/2018/02/28/debugging-queries-to-bws.tpl129
50 files changed, 129 insertions, 0 deletions
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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-01.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-02.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-03.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-04.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-05.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-06.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-07.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-08.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-09.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-10.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/01-11.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-01.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-02.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-03.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-04.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-05.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-06.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-07.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-08.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-09.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-10.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-11.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-12.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-13.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-14.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-15.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-16.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-17.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-18.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-19.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-20.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-21.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-22.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-23.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-24.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-25.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-26.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-27.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-28.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/02-29.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-01.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-02.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-03.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-04.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-05.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-06.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-07.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-08.png
Binary files 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
--- /dev/null
+++ b/src/_img/debugging-queries-to-bws/03-09.png
Binary files 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 @@
+<div class="page-header">
+ <h1>Diagnostyka zapytań wykonywanych do plików BWS</h1>
+ <a href="2018/02/28/debugging-queries-to-bws/">
+ <time class="text-muted" title="2018-02-28 22:00" datetime="2018-02-28T22:00">Wednesday, February 28, 2018</time>
+ </a>
+</div>
+
+<div class="panel panel-default">
+ <div class="panel-body">
+ <p>Artykuł stanowi instrukcję konfiguracji narzędzi i plików, które pozwolą na zrzut i analizę zapytań SQL wykonywanych na bazach danych oprogramowania Bridgemate.</p>
+ <p>
+ Wymagane oprogramowanie to:
+ <ul>
+ <li>Microsoft Access, kompatybilny z plikami formatu Access2000 (tu użyto Accessa 2013)</li>
+ <li>serwer SQL Server (tu: SQL Server Express 2014)</li>
+ <li>SQL Server Import and Export Data (tu: z pakietu wersji 2014)</li>
+ <li>SQL Server Profiler (tu: w wersji 17)</li>
+ </ul>
+ </p>
+ <p>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.</p>
+ </div>
+</div>
+
+<div class="panel panel-default">
+ <div class="panel-heading">
+ <h2>Zarys koncepcji</h2>
+ </div>
+ <div class="panel-body">
+ <p>
+ 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).
+ </p>
+ <p>
+ 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:
+ <ol>
+ <li>Utworzyć bazę danych SQL Server w trybie tzw. <em>linked server</em>, mapując całą jej zawartość na oryginalny BWS.</li>
+ <li>Utworzyć pusty plik Accessa 2000 i połączyć w nim tabele z tabelami tak utworzonej bazy danych.</li>
+ <li>Wszelkie programy używające pliku BWS kierować do tego drugiego pliku BWS, zamiast oryginału.</li>
+ </ol>
+ 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.
+ </p>
+ <p>
+ Niestety, prawidłowa konfiguracja <em>linked server</em> kierującego do pliku BWS mnie przerosła, procedura została więc zmodyfikowana:
+ <ol>
+ <li>Zaimportować całą zawartość oryginalnego pliku BWS do bazy danych SQL Server.</li>
+ <li>A dalej zgodnie z planem - utworzyć plik Accessa łączący się do tej bazy danych i korzystaćz niego.</li>
+ </ol>
+ </p>
+ <p>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.</p>
+ </div>
+</div>
+
+<div class="panel panel-default">
+ <div class="panel-heading">
+ <h2>Import zawartości BWS do SQL Server</h2>
+ </div>
+ <div class="panel-body">
+ <ol>
+ <li>Uruchamiamy SQL Server 2014 Import and Export Data, czyli kreator importu/eksportu danych.</li>
+ <li><a href="/_img/debugging-queries-to-bws/01-01.png">Wybieramy jako źródło danych sterownik Jet Database Engine dla formatu Accessa (JDE to format Accessa 2000, ADE to format nowszy).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-02.png">Wybieramy nasz plik BWS, pamiętając o wyszukiwaniu wszystkich plików, a nie tylko plików <code>*.mdb</code>.</a></li>
+ <li>Pliki BWS nie są zabezpieczane hasłem, więc możemy przejsć dalej bez podawania danych uwierzytelniających.</li>
+ <li><a href="/_img/debugging-queries-to-bws/01-03.png">Jako docelową bazę, wybieramy natywny sterownik SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-04.png">Wybieramy naszą instancję SQL Server oraz dane uwierzytelniania (domyślnie do lokalnej instancji uwierzytelnia się poświadczeniami konta systemowego).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-05.png">Za pośrednictwem przycisku New..., tworzymy nową bazę danych.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-06.png">Będzie to docelowa baza danych dla importu. Jeśli chcemy zaimportować do istniejącej bazy danych, wybieramy ją w tym kroku.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-07.png">Wybieramy kopiowanie wszystkich danych w tabelach lub widokach.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-08.png">Oznczamy wszystkie tabele, jakie udało się wylistować z pliku BWS jako importowane do bazy danych.</a></li>
+ <li>Możemy pominąć tabelę <code>Settings</code> (o tym później), możemy również dla każdej tabeli zmodyfikować sposób importu (Edit mappings...), pozostawiając kolumny tabeli bez zmian, ale np. wybierając zastąpienie istniejących rekordów (jeśli importujemy do istniejącej bazy danych).</li>
+ <li><a href="/_img/debugging-queries-to-bws/01-09.png">Zatwierdzamy natychmiastowe wykonanie importu.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-10.png">Uruchamiamy import.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/01-11.png">Gotowe!</a></li>
+ </ol>
+ </div>
+</div>
+
+<div class="panel panel-default">
+ <div class="panel-heading">
+ <h2>Połączenie nowego pliku Access z bazą SQL Server</h2>
+ </div>
+ <div class="panel-body">
+ <ol>
+ <li><a href="/_img/debugging-queries-to-bws/02-01.png">Tworzymy nową bazę danych Access dla komputerów stacjonarnych, wybieramy docelowe ścieżkę i format.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-02.png">Wybieramy format Access 2000, zatwierdzamy nazwę pliku (na razie może pozostać *.mdb).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-03.png">Zamykamy domyślną tabelę roboczą, przechodzimy do wstęgi Dane zewnętrzne, wybieramy pozycję Baza danych ODBC.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-04.png">Nie importujemy kopii danych z SQL Server, będziemy tworzyć tabele połączone.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-05.png">W zakładce Komputerowe źródło danych skonfigurujemy źródło danych z naszej bazy SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-06.png">Bez uprawnień administracyjnych jesteśmy w stanie zdefiniować źródło jedynie dla aktualnego użytkownika, to wystarczy.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-07.png">Określamy komunikację przy użyciu natywnego sterownika SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-08.png">Nadajemy źródłu nazwę i opis, a także kierujemy je do naszej instancji SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-09.png">Ustawiamy dane uwierzytelnienia do serwera (jak przy imporcie z oryginalnego BWS).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-10.png">Zmieniamy domyślną bazę danych (Change the default database to:) na naszą kopię oryginalnego pliku BWS.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-11.png">Kończymy kreator z domyślnymi parametrami w ostatniej karcie.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-12.png">Możemy jeszcze przetestować połączenie z naszą bazą, na wypadek gdybyśmy np. określili złą lokalizację serwera i nazwę instancji SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-13.png">Wybieramy tak utworzone źródło danych.</a> 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 -&gt; Narzędzia Administracyjne -&gt; Źródła danych (ODBC), przeprowadzając ponowną konfigurację, z wyborem innej domyślnej bazy danych.</li>
+ <li><a href="/_img/debugging-queries-to-bws/02-14.png">Wybieramy wszystkie tabele zaimportowane wcześniej z pliku BWS <strong>poza <code>Settings</code></strong>.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-15.png">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 <code>ID</code>...</a></li>
+ <li>...poza tabelami <a href="/_img/debugging-queries-to-bws/02-16.png"><code>HandEvaluation</code></a>, <a href="/_img/debugging-queries-to-bws/02-17.png"><code>HandRecord</code></a>, <a href="/_img/debugging-queries-to-bws/02-18.png"><code>PlayerNumbers</code></a>, <a href="/_img/debugging-queries-to-bws/02-19.png"><code>RoundData</code></a> i <a href="/_img/debugging-queries-to-bws/02-20.png"><code>Tables</code></a>.</li>
+ <li><a href="/_img/debugging-queries-to-bws/02-21.png">Zmieniamy nazwy zaimportowany tabel połączonych, usuwając przedrostki wynikające z przestrzeni nazw tabel w bazie danych.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-22.png">Po tej operacji powinniśmy mieć w pliu z powrotem oryginalne nazwy tabel z pliku BWS.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-23.png">Możemy podejrzeć kopie oryginalnych danych, pobranych z SQL Server.</a></li>
+ <li>Pozostaje skopiować oryginalną tabelę <code>Settings</code>. Tabeli tej nie dało się zaimportować jako połączonej z SQL Server - jedyny klucz podstawowy, jaki może ona posiadać (<code>Section</code>), niekoniecznie znajduje się zawsze w pliku BWS, poza tym zawiera pola typu <code>bit</code>, które kiepsko się mapują między silnikami bazodanowymi. Oznacza to, że nie będziemy w stanie podsłuchać zapytań do tabeli <code>Settings</code>, 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.</li>
+ <li><a href="/_img/debugging-queries-to-bws/02-24.png">We wstędze Dane zewnętrzne wybieramy źródło Access.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-25.png">W oknie wyboru pliku musi ręcznie wymusić wyświetlenie wszystkich plików w katalogu (nasz BWS ma innerozszerzenie niż Access się spodziewa).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-26.png">Wybieramy opcję importu kopii tabeli. Moglibyśmy utworzyć kolejną tabelę połączoną, ale wówczas modyfikowalibyśmy oryginalne dane.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-27.png">Wybieramy tabelę <code>Settings</code>.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-28.png">Kończymy kreator.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/02-29.png">Mamy teraz gotowy kompletny interfejs identyczny z oryginalnym plikiem BWS (z dokładnością do widoków danych).</a> Możemy zmienić mu rozszerzenie na *.bws.</li>
+ </ol>
+ </div>
+</div>
+
+<div class="panel panel-default">
+ <div class="panel-heading">
+ <h2>Podsłuch zapytań w akcji</h2>
+ </div>
+ <div class="panel-body">
+ <ol>
+ <li><a href="/_img/debugging-queries-to-bws/03-01.png">Uruchamiamy SQL Server Profiler, wybieramy nowy zrzut: New trace</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-02.png">Łączymy się z naszą instancją SQL Server.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-03.png">Domyślne opcje działają calkiem nieźle, możemy ewentualnie automatycznie zrzucać dane do pliku (Save to file:)...</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-04.png">...albo skonfigurować zrzucanie tylko niektórych typów operacji na bazie danych.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-05.png">Zrzut został rozpoczęty, możemy uruchomić program używający plików BWS (np. Kolektor).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-06.png">Wybieramy nasz spreparowany plik BWS zamiast pliku oryginalnego.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-07.png">W oknie SQL Server Profiler widzimy kolejne zrzucane pakiety.</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-08.png">Zamknięcie połączenia z plikiem BWS (zamnknięcie Kolektora) również zostaje odnotowane. Możemy zatrzymać zrzut (Stop trace w pasku narzędzi).</a></li>
+ <li><a href="/_img/debugging-queries-to-bws/03-09.png">Zrzut możemy zapisać (<kbd>Ctrl</kbd>+<kbd>S</kbd>) do pliku *.trc, skojarzonego z SQL Server Profiler, celem późniejszej analizy.</a></li>
+ </ol>
+ </div>
+</div>