konto usunięte
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Można zmienić temat na ".. po stronie SQL'a ..." nie ograniczając się do samego MySQL?
Przemysław
Pawliczuk
CEO/Designer @
h2p.pl, developer @
DreamCommerce SA
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
No ale, "czy jest możliwe", "czy ma sens", "robi kawę"?Strasznie uogólniłeś.
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Przemek Czekaj:
Można zmienić temat na ".. po stronie SQL'a ..." nie ograniczając się do samego MySQL?
MySQL jak pewien kolega zauważył jest najpopularniejszym silnikiem baz danych dla aplikacji w PHP. Dyskutowanie o innych silnikach i ich smaczkach mija się trochę z celem na tej grupie bo z kim mógł bym pogadać o procedurach w MSQSL-u? Ponadto nie ma sensu wypowiadania się o dialekcie którego się nie zna a takiego postgres-a nie znam, nie używałem i pisał o ni nie będę
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
1. Czy Wykorzystaliście kiedykolwiek procedurę po stronie MySQl-a we własnym projekcie. Jeżeli tak to do czego2. Które elementy logiki można przenieść do procedury po stronie MySQL-a
3. Haki związane z wydajnością takich rozwiązań
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Pytania dość ogólne, nie ograniczające się jedynie do MySQL'a więc pozwolę sobie odpowiedzieć na to pytanie w kontekście PostgreSQL'a.1) Notorycznie, procedury wykorzystuje do CRUD'a, w moim FW "nie ma" możliwości wywołania zapytania do bazy z kodu PHP typu: INSERT, DELETE czy UPDATE. Wykorzystuję procedury do dodawania rekordów do bazy, ich aktualizacji oraz kasowania. Również w Triggerach zdarzyło mi się wywoływać procedury.
2) Wszystkie, począwszy od walidacji danych, skończywszy na zwracaniu komunikatów błędów.
3) Wydajność rzecz święta, nie wiem jak to się ma po stronie MySQL'a, ale w PostgreSQL procedury są kompilowane, niestety za każdym razem gdy są pierwszy raz wywoływane. Są też pewnie aspekty dla których lepiej jest operować w języku proceduralnym silnika niż wykonywać te operacje bezpośrednio z php jak np wykorzystywanie wskaźników w pętlach. Poza tym nie kosztuje nas to dodatkowym kosztem każdorazowego połączenia z bazą i wysyłaniem danych, sprawdzaniem wyniku. Całą logikę możemy i jeżeli już wykorzystujemy do tego procedury powinniśmy zaimplementować w nich.
@natomiast ja nie znam procedur w mysql i się o nich wypowiadać nie będę.Przemek Czekaj edytował(a) ten post dnia 21.03.11 o godzinie 10:28
Wojciech Kowalik full stack developer
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Jeśli mówimy o wydajności to wykonywanie skomplikowanych operacji np. złączenia, operacje crud ... to jak najbardziej funkcje. Razem z kumplami wykorzystujemy jedną taką zaawansowaną do manipulacji w czasie rzeczywistym danymi aukcyjnymi. Używałem również trigger`ów (opartych na kursorach) do aktualizowania liczników - ale zrezygnowałem po przejściu na środowisko ndbcluster - względy optymalizacyjno-sprzętowe.Także reasumując funkcje, procedury są pomocne ale tak jak z każdym innym rozwiązaniem trzeba do tego podejść "czy aby naprawdę jest mi to potrzebne"
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
nie można przesadzać też z rozdrobnieniemjeżeli robimy oddzielną procedurę do każdej wręcz głupoty to robi się z tego niezły bajzel w dużym projekcie. bardzo fajnie jest to zorganizowane w Oracle gdzie mamy paczki i możemy sobie do takiej dodać tematycznie to co nas interesuje
kolejny aspekt to kursory - z jednej strony fajnie, z drugiej kiepsko, a dlaczego kiepsko - ano dlatego że operacje na zbiorach są wielokrotnie szybsze od operacji na wierszach w pętli. Problem polega jednak na tym że stworzenie zapytań operujących na zbiorach jest trudniejsze niż wykonanie kilku prostych kroków w pętli (kursora)
Wojciech
Soczyński
Programista
eksplorator -
blog.wsoczynski.pl
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Ja ze swojego doświadczenia mogę powiedzieć tyle, że o ile tworzenie procedur czy funkcji dla prostych rzeczy związanych z samą infrastrukturą "crud" jest szybkie i wygodne. To już ładowanie "logiki biznesowej" gdzie ważne nie są obliczenia, a bardziej flow i różne reguły, prędzej czy później zamienia się w koszmar. Ciężko jest zapanować nad rosnącym modelem, kiedy wszystko mamy w bazie danych, do takich rzeczy najlepszy jest styl obiektowy a nie proceduralny jak w DB.konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Przemysław R.:
Przemek Czekaj:
Można zmienić temat na ".. po stronie SQL'a ..." nie ograniczając się do samego MySQL?
MySQL jak pewien kolega zauważył jest najpopularniejszym silnikiem baz danych dla aplikacji w PHP. Dyskutowanie o innych silnikach i ich smaczkach mija się trochę z celem na tej grupie bo z kim mógł bym pogadać o procedurach w MSQSL-u? Ponadto nie
Nie zgadzam się. Zrealizowałem co najmniej kilka projektów PHP+MSSQL i gro roboty przerzuciłem na procedury w T-SQLu
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Krzysztof F.:
Przemysław R.:
Przemek Czekaj:
Można zmienić temat na ".. po stronie SQL'a ..." nie ograniczając się do samego MySQL?
MySQL jak pewien kolega zauważył jest najpopularniejszym silnikiem baz danych dla aplikacji w PHP. Dyskutowanie o innych silnikach i ich smaczkach mija się trochę z celem na tej grupie bo z kim mógł bym pogadać o procedurach w MSQSL-u? Ponadto nie
Nie zgadzam się. Zrealizowałem co najmniej kilka projektów PHP+MSSQL i gro roboty przerzuciłem na procedury w T-SQLu
:)
która wersja SQL-a? i czym wywoływałeś zapytania? znaczy się którym zestwem funkcji PDO, MSSQL_, to coś od MS-a?Przemysław R. edytował(a) ten post dnia 21.03.11 o godzinie 11:35
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
FreeDTS+
http://pl.php.net/manual/pl/ref.uodbc.php
Serwer: 2005 Express
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Wojciech Soczyński:
Ja ze swojego doświadczenia mogę powiedzieć tyle, że o ile tworzenie procedur czy funkcji dla prostych rzeczy związanych z samą infrastrukturą "crud" jest szybkie i wygodne. To już ładowanie "logiki biznesowej" gdzie ważne nie są obliczenia, a bardziej flow i różne reguły, prędzej czy później zamienia się w koszmar. Ciężko jest zapanować nad rosnącym modelem, kiedy wszystko mamy w bazie danych, do takich rzeczy najlepszy jest styl obiektowy a nie proceduralny jak w DB.
Czy ja wiem? Implementowałem system B2B w sklepie klasy MRP/CRP, jakoś mega trudne to nie było, co prawda czasami włosy mi się jeżyły jak pisałem widoki które miały joiny na 15 tabel, ale dało radę.
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Tu masz listę "why not use stored procedures":http://bit.ly/f6TA7L
Generalnie unikałbym i stosował tylko jeśli muszę.
Najważniejsze "za":
- jeśli widok to za mało
- jeśli wolisz powierzyć pisanie kodu SQL specjaliście od baz danych
- jeśli masz kod, który przerzuca masę danych i nie możesz tego zrobić ani zbiorowo (UPDATE/SELECT) ani na serwerze danych (embedded SQL)Piotr Likus edytował(a) ten post dnia 21.03.11 o godzinie 11:51
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Could slow software development process.Z tym się zgodzę. Pisanie procedur jest "powolne" ale da się w tym dobrze rozkręcić.
Co do:
Views may be all you need.Dopiero od ver 9.0 można robić triggery na widokach.Przemek Czekaj edytował(a) ten post dnia 21.03.11 o godzinie 12:02
Wojciech
Soczyński
Programista
eksplorator -
blog.wsoczynski.pl
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Przemek Czekaj:Pytanie czy pisałeś sam, czy z kimś, bo jeżeli sam to rzeczywiście daje radę. Ale w zespole szczerze wątpie, żeby to zadziałało. Sam właśnie uczestniczyłem w projekcie z joinami na 15 tabel i nie wspominam tego dobrze :>
Wojciech Soczyński:
Ja ze swojego doświadczenia mogę powiedzieć tyle, że o ile tworzenie procedur czy funkcji dla prostych rzeczy związanych z samą infrastrukturą "crud" jest szybkie i wygodne. To już ładowanie "logiki biznesowej" gdzie ważne nie są obliczenia, a bardziej flow i różne reguły, prędzej czy później zamienia się w koszmar. Ciężko jest zapanować nad rosnącym modelem, kiedy wszystko mamy w bazie danych, do takich rzeczy najlepszy jest styl obiektowy a nie proceduralny jak w DB.
Czy ja wiem? Implementowałem system B2B w sklepie klasy MRP/CRP, jakoś mega trudne to nie było, co prawda czasami włosy mi się jeżyły jak pisałem widoki które miały joiny na 15 tabel, ale dało radę.
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Wojtku ja też tego miło nie wspominam ;) Ale czego się w życiu nauczysz i przez jakie bagno przebrniesz nikt Ci tych doświadczeń nie zabierze ;]konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Przemysław R.:
Dyskusja tak jak w temacie.
A o czym tu dyskutować? Jak się da, to trzeba przerzucać na bazę danych, a nie męczyć się z tablicami w PHP. Joiny teoretycznie też da się zaimplementować poprzez 2 pelne selecty z bazy i obróbkę na tablicach PHPowych ;P
Kod SQL/PLSQL/TSQL prawie zawsze będzie szybszy niż to samo zrobione w PHP czy innym C#.
konto usunięte
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Adam Michalski:
Przemysław R.:
Dyskusja tak jak w temacie.
A o czym tu dyskutować? Jak się da, to trzeba przerzucać na bazę danych, a nie męczyć się z tablicami w PHP. Joiny teoretycznie też da się zaimplementować poprzez 2 pelne selecty z bazy i obróbkę na tablicach PHPowych ;P
Kod SQL/PLSQL/TSQL prawie zawsze będzie szybszy niż to samo zrobione w PHP czy innym C#.
ale o wiele trudniejszy :)
Bartosz Ratajczyk MS SQL Developer
Temat: Wykorzystanie procedur i funkcji po stronie MySQL w...
Zależy od stopnia skomplikowania. Przerzucenie na bazę serii operacji INSERT/UPDATE raczej nie będzie czymś trudnym.Sam stosowałem procedury w MySQLu do importu danych. Przez stronę ładowany był plik, jedyna operacja po stronie aplikacji WWW to wrzucenie danych do tabeli buforowej (przez uruchomienie LOAD DATA INFILE), a potem procedura przetwarzała do formatu i tabel docelowych.
Podobne tematy
-
PHP » Problem z połączeniem PHP z MySQL Cluster -
-
PHP » MySQL][PHP]jak przejść z pliku tekstowego do bazy danych? -
-
PHP » szukam programisty PHP/MySQL -
-
PHP » poszukuje informatyka (PHP i MySQL) -
-
PHP » Serwery z obsługą PHP i MySQL - darmowe ? -
-
PHP » PHP i MySQL Tworzenie stron www, Vademecum profesjonalisty -
-
PHP » Sciezka kariery w php +mysql. Pomocy. -
-
PHP » Eksport z PHP/MySQL do formatu DTP -
-
PHP » Biblioteka JQplot + PHP + MySQL. Problem z wykresem -
-
PHP » programiści / koderzy PHP & MySQL & AJAX -
Następna dyskusja: