9장. 데이터베이스에 로직 저장하기
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
대부분의 관계형 데이터베이스에서는 저장 프로시저와 사용자 정의 함수 (UDF)라고 하는 재사용 가능한 로직 덩어리를 구획화할 수 있습니다. 또한, 많은 관계형 데이터베이스에서는 트리거를 사용하여 데이터의 변경이나 데이터베이스의 구조적 변경에 React할 수 있습니다. SQL 표준은 이를 표현하기 위한 구문을 정의합니다. 이 장에서는 형 변환, 커서, 함수, 메서드, 프로시저, 트리거 및 유형 작업을 위한 SQL 표준 명령과 이 책에서 다루는 데이터베이스에서 이러한 명령이 어느 정도 지원되는지(표준에서 벗어난 부분 또는 확장 포함) 중점적으로 살펴봅니다. 최신 SQL 표준에서 다루지 않는 한 가지 특별한 기능은 집계 함수를 만들기 위한 구문입니다. 이 책에서 다루는 모든 데이터베이스는 이 기능을 지원하지만 구문에서 많은 편차가 있습니다. 또한 SQL 표준은 데이터베이스의 개체(예: 테이블, 뷰, 심지어 함수)가 추가, 변경 또는 삭제될 때 동작을 수행하는 트리거를 다루지 않습니다. 다시 말하지만, 대부분의 플랫폼에서 이러한 트리거를 제공하지만 구문은 다양합니다.
이 챕터 사용 방법
이 장에서 명령을 조사할 때
"SQL 플랫폼 지원"을 읽어보세요 .
표 9-1을 확인합니다.
특정 SQL 문을 찾아 구문을 확인하고 '키워드', '한눈에 보는 규칙', '프로그래밍 팁 및 문제' 섹션을 읽어보세요. 특정 플랫폼 구현을 찾고 있는 경우에도 이 작업을 수행하세요.
마지막으로 플랫폼별 구현 정보를 읽어보세요.
특정 플랫폼 구현에 대한 항목은 표준과 다르지 않은 절에 대한 정보를 중복하지 않는다는 점에 유의하세요. 따라서 해당 명령의 가능한 모든 세부 사항을 다루기 위해 공급업체 변형에 대한 설명과 SQL 표준 사이를 넘겨야 할 수도 있습니다.
MySQL에 대한 논의에서는 MySQL의 포크인 MariaDB도 포함할 것입니다. 대부분의 경우 MySQL과 MariaDB는 코드가 완전히 호환되는 구문을 제공합니다. 이러한 경우에는 이들을 통칭하여 MySQL로 지칭합니다. 중요한 방식으로 MySQL에서 벗어나는 경우에만 MariaDB를 명시적으로 언급할 것입니다.
SQL 플랫폼 지원
표 9-1에는 이 장에서 설명하는 SQL 문, 이를 지원하는 플랫폼 및 플랫폼의 지원 정도가 나와 있습니다. 다음 목록은 표 9-1을 읽는 데 유용한 팁과 각 약어의 의미에 대한 설명을 제공합니다:
첫 번째 열에는 알파벳 순서대로 SQL 명령이 포함되어 있습니다.
각 명령의 SQL 문 클래스는 두 번째 열에 표시되어 있습니다.
이어지는 열에는 각 공급업체의 지원 수준이 나열되어 있습니다:
- 지원(S)
- 플랫폼은 특정 명령에 대한 SQL 표준을 지원합니다.
- 지원, 변형(SWV) 포함
- 플랫폼은 공급업체별 코드 또는 구문을 사용하여 특정 명령에 대한 SQL 표준을 지원합니다.
- 지원, 제한 사항 있음(SWL) ...