내가 생각하는 프로시저 장점1. 다량의 쿼리 날릴 필요 없어서 네트워크 라운드 트립 비용 쌈2. 다량의 쿼리를 어플리케이션단에서 날리면 동시성 문제 생길 위험 큼, 그렇다고 락 잡으면 sp에서 락 잡는거보다 더 늦게 풀림굳이 단점 따지면 버전 관리 안되는건데이건 주석으로 관리하면 볼만함대체 왜 안씀????
안 쓸 이유 없음 다들 많이 쓰고. 그냥 계속 쓰면 됨.
난 서버 단에서 EFCore Linq 이용하는 게 편한던데
유지보수가 씨발이기 때문
버전관리되냐? - dc App
깃붕이들이 욕하는건 모든걸 프로시저로 다 때려넣어서 그런거 아님?
DBA 입장에서도 프로시저 별로 안 좋아함
디버깅 어렵고 로직 테스트 어려워서?
ms에서 테스트툴만들어놨어
디버깅이 존나 빡셈 기본적으로 db는 어느 비즈니스에서나 코어역할을 하기 때문에 권한이나 접근이 철저한 편임 근데 db에 로직이 몰려있다? 개발자 입장에서 죽어나가는 거임
애초에 몇십줄씩 나오는 쿼리나 스토어드 프로시저는 도메인 구조가 잘못되었거나, 용도에 맞지 않게 쓰는게 대부분임. 예를 들면 분석용 쿼리라든가
동시성문제는 어차피 DB 여러대 샤딩해서 쓴다거나 하면 RDB 자체적으로 해결할 수 없음. 그건 앱단에서 처리해야되는거임
해결할 수는 있음 성능이 좆같이 떨어져서 안하는거지
아무도 혐오 안함
굳이
이점도 당연히 있겠지만 스토어드 프로시저 엄청 쓰는 곳들 소스 까보면.. 과학이었음
유지보수가 훨씬 쉽고 편함
(프로시저 안쓸때 이야기)
sqlp 공부안해봄? 잘못쓰면 성능에 치명적임
잘못쓰면 인라인 쿼리도 치명적이야..