SQL/PSM

SQL/PSM(SQL/Persistent Stored Modules)은 주로 저장 프로시저에 사용하기 위해 절차적 언어로 SQL 확장을 정의해둔 ISO 표준이다. 1996년에 SQL-92(ISO/IEC 9075-4:1996, 가끔은 PSM-96이나 SQL-92/PSM라고도 부름))로 처음 출판된 SQL/PSM은 나중에 멀티 파트 SQL:1999 표준으로 통합되었으며, 그 뒤로 지금까지 이 표준의 파트 4로 유지되고 있다. 가장 최근 판은 SQL:2011이다. SQL:1999 파트 4는 초기 PSM-96 보다 적용되는 내용이 적었는데 그 까닭은 루틴을 정의하고 관리하고 호출하는 SQL 문들이 실제로는 파트 2 SQL/Foundation에 포함되면서 SQL/PSM라는 절차적 언어 그 자체만 남겨두었기 때문이다. SQL/PSM 기능들은 SQL 표준이 관여하는 한 여전히 선택 사항이며, 이들 중 대부분은 기능 P001-P008 안에 그룹화되어 있다.

SQL/PSM은 제어 흐름, 예외 처리 (SQL/PSM에서는 "조건 관리/condition handling"라 부름), 지역 변수, 식의 변수 및 매개변수로의 할당, 커서의 절차적 이용을 위한 문법과 시맨틱을 표준화한다. 저장 프로시저를 위한 정보 스키마 (메타데이터)도 정의한다. SQL/PSM은 SQL:1999의 구조화된 자료형을 위한 메소드를 정의할 수 있는 언어의 하나이다. 이 밖에 SQL/JRT를 통한 자바가 있다.

실질적으로 MySQL의 절차적 언어와 IBM의 SQL PL (DB2에서 사용)은 SQL/PSM 표준에 매우 가깝다.

SQL/PSM은 PL/SQL과 PL/pgSQL에 영향을 받았으며 이로 인해 서로 비슷한 언어이다.

각주

참고 문헌 
 Jim Melton, Understanding SQL's Stored Procedures: A Complete Guide to SQL/PSM, Morgan Kaufmann Publishers, 1998, 

데이터 관리
SQL
1996년 개발된 프로그래밍 언어
데이터 중심 프로그래밍 언어