Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kompatybilnosc SQL w MySQL i PostgreSQL
Forum PHP.pl > Forum > Bazy danych > MySQL
marcini82
Witam!

Mam nadzieje ze pomoze mi ktos kto zna obie bazy bo ja jak na razie uzywalem tylko MySQL.

Czy jesli napisze klase obslugujaca baze danych MySQL, np. taka:
  1. <?php
  2.  
  3. class baza{
  4.  
  5. public function polacz(){
  6. $polaczenie=mysql_connect(...costam...);
  7. .
  8. .
  9. . itd.
  10. }
  11.  
  12. public function zapytanie($sql){
  13. $zapytanie=mysql_query($sql);
  14. .
  15. .
  16. . itd.
  17. }
  18. public function ile_wierszy($wynik){
  19. $ile=mysql_num_rows($wynik);
  20. .
  21. .
  22. . itd.
  23. i tak dalej...
  24. }
  25. }
  26. ?>


A potem zapragne uruchomic aplikacje na serwerze majacym tylko PostgreSQL, to czy wystarczy napisac nowa klase dla PostgreSQL, podstawic ja zamiast tej MySQL-owej i juz bedzie smigac?

Czy miedzy tymi bazami wystepuja tez roznice w skladni SQL i trzeba by przerabiac jeszcze zapytania pod katem Postgresa?
halfik
sa roznice. postgres to PL/SQL a mysql to czysty SQL. drobne roznice sa. ale... oba jezyki zapytan sa oparte o ten sam standard i jesli bedziesz uzywal podstawowej skladnis sqla bez cudow to zadziala tu i tu.

i po co chcesz pisac swoje klasy do BD? skorzystac z gotowych, sprawdzonych, dopracowanych jak np. AdoDB - i pozniej nawet nie musisz podmieniac klasy.

w kazdym badz razie jesli to zrobisz z glowa to to bedzie dzialac i na mysql i na postgreesql.
SongoQ
Co do tej podstawowej skladni to moze byc problem, pierwsze co to skladnia LIMIT, potem sekwencja i autoincrament. Mozna wymieniac i wymieniac. Trudno jest zapanowac zeby pisac jednego SQLa i dzialal tu i tu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.