Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> połączenie i wykonywanie zapytań mssql na windowsie i ubuntu
qoonieczko
post 8.02.2016, 12:28:42
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 30.07.2013

Ostrzeżenie: (0%)
-----


Witam,

Czy zna ktoś jakiś sposób, żeby można było łączyć się, wykonywać zapytania w kodzie itd. w identyczny lub chociaż bardzo podobny sposób na windowsie i na linuxie(ubuntu)? Wychodziłem z założenia, że na win będę korzystał z biblioteki sqlsrv, a na ubuntu z dblib i wtedy różnica byłaby w jednej funkcji, w jednym pliku:
na win:
$dsn = "sqlsrv:Server=10.1.1.25\\instancja;Database=baza";
na ubuntu:
$dsn = "dblib:Server=10.1.1.25\\instancja;Database=baza";

To nawet działało, ale jak przeniosłem aplikację z win na ubuntu to okazało się, że dblib resetuje fetch'a, który wyświetla coś z bazy jeśli wewnątrz jest jakiś inny fetch. Dokładnie problem jest opisany tutaj:
https://bugs.php.net/bug.php?id=65945

Raczej tego nie obejdę wiec szukam innego sposobu. Ogólnie chce robić sobie na lokalnym serwerze na windowsie, bo mi tak wygodniej i szybciej i potem gotowca przerzucić na serwer ubuntu. Potrzebuję sposobu, żeby w trakcie przerzucania nie wymagał wielu zmian, a najlepiej żadnych. Ma ktoś jakiś pomysł?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
qoonieczko
post 8.02.2016, 13:26:18
Post #2





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 30.07.2013

Ostrzeżenie: (0%)
-----


To był przykład napisany na szybko, żeby uświadomić na czym polega problem. Czasami ciężko jest nie zrobić zapytania w zapytaniu. Na takiej samej zasadzie działają zazwyczaj procedury SQL'owe. Najpierw masz cursor, potem jedziesz po tym i wykonujesz różne działania, zapytania. Zapytań wykonuje się dokładnie tyle samo co w przypadku użycia tablicy. Co więcej masz w tym przypadku dodatkowe działania, bo najpierw musisz wrzucić dane do tablicy, a potem foreach, żeby na niej zadziałać. A tak to wszystko robię podczas fetchowania. Może się mylę, ale póki co takie jest moje rozumowanie:) Rozumiem, że Tobie bardziej chodzi o to, że oba sposoby są złe i najlepszy byłby left join, ale mam takie zagwozdki, że nie da rady wyciągnąć tego jednym zapytaniem.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 9.06.2024 - 16:18