![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 382 Pomógł: 0 Dołączył: 29.11.2005 Skąd: :jestem(); Ostrzeżenie: (0%) ![]() ![]() |
Witam,
może temat niezrozumiały ale juz tłumaczę. Potrzebuję mieć oddzielną bazę na informacje o użytkownikach (przechowywane oddzielnie), a pozostale aplikacje pracujących na oddzielnych bazach wykorzystywałyby te informacje (przez co byłoby możliwe dodawanie oddzielnych baz dlakażdej aplikacji) Nie mogę korzystać w tym przypadku z zapytań które zawierają nazwy baz w SQL. Często chodzi o pobranie z bazy użytkowników czegoś wiecej niż ID usera (które jest wykorzystywane do zapytań SQL), lub potrzeba wykonać jakieś złączenie z tabelą użytkowników. Można coś takiego osiągnąć ? -------------------- Powyższy post wyraża jedynie opinię autora w dniu dzisiejszym. Nie może on służyć przeciwko niemu w dniu jutrzejszym. Ponadto autor zastrzega sobie prawo zmiany poglądów, bez podawania przyczyny.
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Zrób sobie klase DataBase. Zrób dodatkowo jakąś kolekcję (może być prosta klasa z tablicą statyczną i metodami dostępowymi) obiektów typu DataBase, z metodą statyczną getDB() i przekazuj nazwę bazy do tej metody.
$userBD = DataBaseCollection::getDB("User"); Klasa DataBaseCollection sprawdzi czy instancja danej bazy została wcześniej stworzona i jeśli tak przekaże referencję do odpowiedniego obiektu, a jeśli nie to ją stworzy i zwróci. Potem używasz to mniej więcej tak: $userDB->sql("SELECT * FROM costam WHERE id = 1"); Złączenie jest możliwe chyba:
Znalazłem jeszcze takie coś, bardziej przejrzyste ![]() Kod SELECT database1.sharedUsers.*, database2.userTable.*
FROM database1.sharedUsers LEFT JOIN database2.userTable.userID ON database1.sharedUsers.userID Ten post edytował ayeo 26.11.2007, 13:29:07 -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 382 Pomógł: 0 Dołączył: 29.11.2005 Skąd: :jestem(); Ostrzeżenie: (0%) ![]() ![]() |
Kod Nie mogę korzystać w tym przypadku z zapytań które zawierają nazwy baz w SQL To musiałaby być klasa która będzie reprezentowała bazę danych, ale zapytania każda z tych klas musiałaby wykonaywać odpowiednio dla swojej bazy, a dopiero po stronie php wykonywane byłyby proste złączenia. Jakoś tak to widzę ![]() -------------------- Powyższy post wyraża jedynie opinię autora w dniu dzisiejszym. Nie może on służyć przeciwko niemu w dniu jutrzejszym. Ponadto autor zastrzega sobie prawo zmiany poglądów, bez podawania przyczyny.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 01:20 |