Jak przekonać się do ORM?

2017-10-03 14:25
0

Witajcie.

W aplikacjach które tworzę często korzystam z danych z bazy danych.
Wiem, że dobrą praktyką jest korzystanie z ORMa zamiast klepania zapytań ręcznie.

I tu pojawia się problem... mimo kilku prób nie mogę się przekonać do tych rozwiązań.
O ile jakiś prosty SELECT nie stanowi problemu to bardziej złożone pytania to masakra i dużo wygodniej mi napisać SELECTA...

Czy naprawdę z czasem wygodniej korzysta się z ORM niż z pisania zapytań?

Pozdrawiam

edytowany 1x, ostatnio: hipekk, 2017-10-03 14:28

Pozostało 580 znaków

2017-10-03 14:59
1

Mi osobiście ORM wystarcza do praktycznie każdego zapytania. Tam gdzie nie wystarcza lub zależy mi na tym by specjalnie pominąć mechanizmy ORM'a - wtedy odpalam ręcznie napisane zapytanie (ale i tak pomaga w tym ORM, żeby np zmapować wyniki do postaci jakichś obiektów).

Podaj przykład takiego zapytanie które stanowi problem w ORM'ie (jaki ORM tak btw?)

Jeśli masz poprawne zaprojektowaną bazę i dobrze wygenerowane encje - to tak z czasem korzystanie z ORM'a staje się bardzo wygodne. No ale trzeba znać umiar - to że się korzysta z ORM'a nie oznacza że 100% zapytań musi lecieć do bazy właśnie tą drogą. Trzeba znać umiar i jeśli zapytanie jest na serio skomplikowane do zrobienia w ormie- to nie cackamy się i walimy bezpośrednie zapytanie (pamiętaj o poprawnym zbindowaniu wartości)

edytowany 1x, ostatnio: axelbest, 2017-10-03 15:02

Pozostało 580 znaków

2017-10-03 15:11
0

Kurcze teraz nie pamiętam szczerze mówiąc o jakie konkretnie chodziło.
Było coś z kilkoma JOINami (w niektórych warunek z poprzedniej tabeli + stały warunek) i jakimś grupowaniem na koniec.
Próbowałem z nHibernate z tego co pamiętam.

Zabieram się własnie za zupełnie nowy projekt i przy okazji niego chce kolejny raz podejść do tematu stąd pytanie, spróbuję i będę krzyczał jak znów trafię w ślepy zaułek.

Pozostało 580 znaków

2017-10-03 15:52
0

Ja obecnie używam czegoś "nie do końca" ORM-owego a bardziej DSLa upraszczającego używanie warstwy danych Ecto gdzie w większości przypadków nie miałem problemów z pisaniem nawet bardziej skomplikowanych query. Jedyny moment gdzie musiałem napisać całe query samemu to jak używałem rekursywnego CTE do wyciągnięcia rodzica i wszystkich (zagnieżdżonych) dzieci. W pozostałych przypadkach co najwyżej proste fragmenty, no może jeszcze LATERAL JOIN ale tutaj chyba są prowadzone jakieś prace by to poprawić, ale chyba w każdym frameworku będzie to trochę problematyczne do użycia.


Pozostało 580 znaków

2017-10-03 16:01
3

Zaraz, ale fakt istnienia ORM nie oznacza że musisz zrezygnować z ręcznych zapytań oO
Zresztą ORM świetny do CUD a R lepiej robi się natywynymi zapytaniami często.


Nie pomagam przez PM. Pytania zadaje się na forum.

Pozostało 580 znaków

2017-10-03 16:18
0

ORM przede wszystkim pozwala zaoszczędzić masę czasu na tworzeniu schematu bazy. Jeśli baza już istnieje, to sens używania ORMa znacznie spada.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."

Pozostało 580 znaków

2017-10-03 22:02
2

Do ORM z miejsca przekonuje się człowiek jak ma debugować kod procedury składowanej gdzie do tego zapytania są dynamicznie składane. Powodzenia :)

edytowany 2x, ostatnio: grzesiek51114, 2017-10-03 22:03

Pozostało 580 znaków

2017-10-04 10:05
0

Mnie też ORMy nie przekonują. Aplikacje bazodanowe zaczynam projektować od bazy danych. Zazwyczaj to nie są zwykłe, proste selecty, tylko bardziej skomplikowane zapytania, z których robię widoki, do tego dochodzą czasem funkcje i procedury składowane. Idea ORMów jest zacna, ale...

Pozostało 580 znaków

2017-10-04 10:06
0

Chyba prędzej jak się odzwyczaić od ORM ;)

Pozostało 580 znaków

Liczba odpowiedzi na stronę

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