Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych AFIN.NET - przykład ETL

Jak (za pomocą myszki, oczywiście) zbudować procedurę zasilania hurtowni danych danymi z różnych źródeł (tzw. proces ETL: 'Extract, Transport, Load'), tu:

* SQL Server (v.Express-lokalny)
* SQL Server (v.pełna-przez Internet)
* MySQL (przez Internet)
* Excel 2007 (Pliki nie otwierają się w E2003)
* Plik tekstowy (tu: csv)

http://afin.net/webcasts/Demo_ETL1.swf

konto usunięte

Temat: Hurtownia danych AFIN.NET - przykład ETL

stwierdzenie że nie musisz znać SQL-a jest mocno na wyrost

niech Pani Krysia zrobi to co pokazałeś w tym przykładzie na innych bazach danych :) oj bym się zdziwił
Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych AFIN.NET - przykład ETL

OK, argument przyjęty.
Trzeba wiedzieć, co się chce i jak to uzyskać.
"Fuj-SQLa" ;) jednak znać nie trzeba.

Ale, ad. Pani Krysi:
My tego właśnie uczymy na kursach. Kolejny startuje jutro:
http://www.szkolenia.infor.pl/termin-t2183.htm

konto usunięte

Temat: Hurtownia danych AFIN.NET - przykład ETL

i jeszcze jedno
silnik JET wykorzystany w tym przykładzie jakie kolektor danych ma pewną wadę tj. ograniczoną przestrzeń na dane w danym pliku - co jakby to powiedzieć jest kulą u nogi tego rozwiązania biorąc pod uwagę źródła danych mogą mieć więcej danych niż ten limit

moim zdaniem lepszym rozwiązaniem było by stworzenie linku lub przynajmniej danie userowi takiej możliwości wyboru
Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych AFIN.NET - przykład ETL

Zgadza się.

Użycie Accessa jest podyktowane wyłącznie wygodą i brakiem wymagalności zakupów. Jak ktoś ma większe dane, ma też informatyka, który może bazę postawić nawet na normalnym SQL (Większość firm ma, ale mało używa) albo darmowym SQLE, MySQLu, Oraclu (też jest darmowy, nawet podobno kostki w Oraclu są darmowe, ale nie sprawdzałem) - więcej! - może ją wręcz wyeksportować z Accessa.

Zresztą - tu można wszystko, bo to taki sam SQL, jak w poważnych bazach. Ja pracuję nad zbliżeniem tego wszystkiego do Pani Krysi i jej Pana Zdzisia (tzn. jej informatyka)

A wybór już jest - wystarczy te "domyślne" [AFIN.NET.DB] zastąpić przez "INTO", itp.

Proszę o ciąg dalszy!

konto usunięte

Temat: Hurtownia danych AFIN.NET - przykład ETL

Wojciech Gardziński:
A wybór już jest - wystarczy te "domyślne" [AFIN.NET.DB] zastąpić przez "INTO", itp.

ta opcja tworzy nową tabelę czy dodaje dane do istniejącej? bo nie bardzo rozumiem kontekst

mówiąc link miałem na myśli klasyczną tabelę podlinkowaną - obiekt zajmuje całe nic a ma pełen dostęp do podlinkowanego obiektu, w ten sposób omijamy ograniczenia Access-a
Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych AFIN.NET - przykład ETL

Tzn. dokładnie jest tak:
przez INTO można wszystko, bo po to jest SQL, ale trzeba go znać i trzeba znać nie tylko SELECTA ale i ConnectionStringi - uniwersalne, ale trudne.

Jest więc kilka opcji:
1. [AFIN.NET.DB]Tabela - bez "!" po "]" - robi SELECTA, gdy tabeli nie ma, ale jak tabela już jest - robi INSERTA.
2. [AFIN.NET.DB]!Tabela - do trudniejszych zastosowań - Kasuje tabelę gdy już jest i robi SELECTA (przez Recordseta)
3. Ale cały czas to nie ogranicza SELECT ... INTO ... IN [Provider2] ... FROM ... IN [Provider...] (wtedy pole ResultRange zostawia się puste)

A teraz się przyznam bez bicia i poproszę kolegę o pomoc, bo ja najzwyczajniej nie umiem: Jak wsadzić z SQLE do MDB przez INTO?
Bo u mnie nie działa. Ze wszystkiego działa, a z SQLE, SQL, MySQL nie - dlatego robię przez Recordseta. Efekt jest, ale niedosyt też.

P.S.
Ad. tabel zlinkowanych:
To też opcja, ale wymaga "Zarządzania plikiem Accessa", trzeba mieć Accessa, umieć w nim choć trochę... Raczej unikam, ale nie wykluczam.Wojciech Gardziński edytował(a) ten post dnia 22.06.09 o godzinie 15:10

konto usunięte

Temat: Hurtownia danych AFIN.NET - przykład ETL

co do tabel podlinkowanych można je zrobić za pomocą ADOX
http://support.microsoft.com/kb/240222
http://pastebin.com/f19419549

ogólnie to dosyć prosta czynność, są nawet gotowe funkcje, jedynie co trzeba przygotować to string do połączenia

jeżeli chodzi o select into

SELECT Acc_AGENCJA.* 
INTO tab_test
FROM Acc.AGENCJA AS Acc_AGENCJA IN '' [ODBC;DRIVER=SQL Server;SERVER=baza_danych;DATABASE=DB_dane;LANGUAGE=polski;Trusted_Connection=Yes];
Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych AFIN.NET - przykład ETL

Uwaga, popraliśmy się trochę z kolegą Przemkiem na privie, bo technicznie.
Dzięki jego podpowiedziom, mamy to, co chcieliśmy:
Czyli INTO z bazy zewnętrznej do Accessa, a po polsku: łatwe wyciąganie z dowolnych baz zewnętrznych całości lub części (np. przyrostowej) dowolnej tabeli bezpośrednio do tabeli naszej mini- hurtowni.

[AFIN.NET.Folder]\Samples\Cases\AFIN.NET.InformationServices\Temp\WorkBase.mdb

SELECT ODBIORCA.* INTO tab3 FROM ODBIORCA IN Moja[ODBC;DRIVER=SQL Native Client; SERVER=AFIN5\SQLEXPRESS; DATABASE=BazaDanych1; LANGUAGE=polski; Trusted_Connection=Yes]

Dzięki!
Rozumiem, że pranko dalej...

Następna dyskusja:

Bij Biaja 12.3.2014 - AFIN....




Wyślij zaproszenie do