프로시저의 정의
저장 프로시저 또는 스토어드 프로시저는 일련의 쿼리를 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합이다. 데이터베이스에 대한 일련의 작업을 정리한 절차를 관계형 데이터베이스 관리 시스템에 저장한 것으로, 영구저장모듈이라고도 불린다. 출처: 위키백과
프로시저 필요성
간단한 쿼리라면 별 문제가 없겠지만, 쿼리가 복잡할수록 string으로 쓰면 가독성도 떨어지고 유지보수도 어렵다. 쿼리를 수정하려면 서버를 내렸다가 다시 올려야한다.

프로시저로 전환하면 강조컬러가 표시되는 데이터베이스 툴에서 작업하므로 가독성 있다. 그리고 쿼리를 수정할 때 서버를 내릴 필요가 없고 바로 데이터베이스에 접속해서 수정하면 된다.


C#에서 마리아 db 사용 시 주의점
마리아db는 대소문자를 구분하지 않고 파스칼 케이스, 스네이크 케이스를 구분하지 않는다. 그래서 c#에서 별다른 처리를 하지 않고 dto를 파라미터로 전달해도 별 문제 없어 동작한다. 하지만 dto 필드의 이름을 스네이크 케이스로 변환했을 때 같다면 문제가 생긴다. 이때에는 마리아 db의 컬럼 앞에 테이블 이름을 붙여줘야한다.
예시
// 문제(x). 마리아 db는 Email도 email로 인식함
SELECT user_id, user_email, user_name FROM user WHERE user_email = Email
// 문제(o). 이때는 테이블 컬럼 앞에 테이블 이름을 붙여준다.
SELECT user_id, email, user_name FROM user WHERE email = Email
// 문제(x)
SELECT user_id, user. email, user_name FROM user WHERE user. email = Email
'DB' 카테고리의 다른 글
| 자주쓰는 SQL Server 기능 모음 (0) | 2025.01.02 |
|---|---|
| Java Script Mongoose 비동기 처리 (0) | 2023.12.29 |
| sql join (1) | 2023.09.15 |
| aws 리눅스 마리아 db 설치 (1) | 2023.09.11 |
| mysql, heroku, c# 연동 (1) | 2023.09.04 |