Łączenie wyników z wielu baz w IB

Odpowiedz Nowy wątek
2006-08-09 15:07
Młody_pytajnik
0

Teraz mam troszeczkę inny problem. W moim programie używam wiele baz danych aby zmiejszyć ich rozmiar.
Zapytania do każdej z baz danych mam na innym DateModule.
I teraz nie bardzo wiem jak w jednym zapytaniu pobrać wyniki z kilu baz danych.
Bardzo proszę o krótki przykład...

Struktura baz to:

Nazwa bazy: BAZA1
Nazwa tabeli: PERSONALIA
Struktura tabeli PERSONALIA
ID IMIE NAZWISKO
1 Adam Kowalski
2 Anna Nowak

Nazwa bazy: BAZA2
Nazwa tabeli: ZLECENIA
Struktura tabeli ZLECENIA
ID ID_OSOBY OPIS_ZLECENIA
1 2 Naprawa telewizora

i teraz chodzi o to aby wyświetlić

Anna Nowak Naprawa telewizora

takie coś nie bardzo chce działać:

select PERSONALIA.IMIE,PERSONALIA.NAZWISKO,ZLECENIA.OPIS_ZLECENIA from ZLECENIA
join PERSONALIA on PERSONALIA.ID=ZLECENIA.ID_OSOBY

Pozostało 580 znaków

2006-08-09 15:23
0
Młody_pytajnik napisał(a)

Teraz mam troszeczkę inny problem. W moim programie używam wiele baz danych aby zmiejszyć ich rozmiar.

nie obraź się ale takiej głupoty to jeszcze nie słyszałem. To po ile mają te bazy 10GB, 20GB???

I teraz nie bardzo wiem jak w jednym zapytaniu pobrać wyniki z kilu baz danych.

nie da się


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-08-09 15:48
0
Misiekd napisał(a)

I teraz nie bardzo wiem jak w jednym zapytaniu pobrać wyniki z kilu baz danych.

nie da się

Nie da się ale tylko wprost...
rozwiązać to można na kilka sposobów, np. jednym z rozwiązań to zapisanie wyniku select'a z jednej bazdy do zmiennej lokalnej a nastepinie połącznie tego z select'em do drugiej bazy
lub inne rozwiązanie to jeżeli lubisz tworzyć wiele baz to stwórz trzecią bazę (ewentualnie wystarczy osobana tabela) do której najpier insertujesz wrtości z pierwszej bazy a potem robisz update'a na pozostałe pola z drugiej bazy na podstawie danych zainsertownych z pierwszej bazy.


Rzeczy niemożliwe robimy od ręki na cuda trzeba troszeczkę poczekać...

Pozostało 580 znaków

2006-08-09 15:57
0
snowfido napisał(a)

jednym z rozwiązań to zapisanie wyniku select'a z jednej bazdy do zmiennej lokalnej a nastepinie połącznie tego z select'em do drugiej bazy
szczególnie jak w wyniku selecta dostaniesz 500 rekordów po 30 pól każdy a potem sobie to połączysz pięknie z wynikiem selecta z drugiej bazy i wrzucisz do DBGrida....
Proszę Cię

lub inne rozwiązanie to jeżeli lubisz tworzyć wiele baz to stwórz trzecią bazę (ewentualnie wystarczy osobana tabela) do której najpier insertujesz wrtości z pierwszej bazy a potem robisz update'a na pozostałe pola z drugiej bazy na podstawie danych zainsertownych z pierwszej bazy.

to weź i każdą tabelę wsadź do osobnej bazy albo lepiej - po co w ogóle bazy, zapisywać wszystko do plików txt i już


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-08-09 22:05
mandms
0

przenies z tych baz tabele z odpowiednimi prefixami do jednej bazy.
zrob sobie zdefinioane widoki i potem pobierasz tylko interesujace cie dane

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0