데이터 언어 인터페이스
Data Language Interface데이터 언어 인터페이스(Data Language/I, DL/I, Data Language/Interface, Data Language/One[1])는 IBM의 IMS 데이터베이스와 데이터 통신 시스템에 액세스하는 데 사용되는 언어 시스템이다.null
그것은 소프트웨어 스텁인 DFSLI000에 전화를 걸어 어떤 언어로부터도 구현된다.이 스텁에는 COBOL 프로그램에서 CCLTDLI를 호출하는 등 다양한 프로그래밍 언어를 처리할 수 있는 진입점이 있다.이 스텁은 호출 프로그램에 연결되어 IMS 시스템에 요청을 전달하고 결과와 상태 코드를 반환한다.null
모든 전체 기능 IMS 데이터베이스에서 검색할 수 있는 가장 작은 요소는 세그먼트다.각 세그먼트는 필드로 구성되며, 그 중 하나는 일반적으로 키 필드가 될 것이다.세그먼트는 데이터베이스에 계층적으로 배열되며, 최상위 세그먼트 유형은 루트 세그먼트가 된다. 255개의 다른 세그먼트 유형은 어떤 데이터베이스에서도 허용된다.데이터베이스 레코드는 특정 루트 세그먼트와 모든 종속 하위 세그먼트로 구성되며, 레코드의 세그먼트 수 또는 데이터베이스의 레코드 수(저장 공간의 물리적 제한과는 별개)에 제한이 없다.null
어떤 데이터베이스의 구조도 PCB(Program Communication Block)로 어플리케이션 프로그램에 제시되며, 이는 스텁에 전달되는 파라미터 중 하나로 사용된다.다른 유형의 PCB는 거래 처리 메시지를 주고 받고, 사용자의 VDU 화면에 접속하여 쓰고, 보고서를 인쇄하는 등의 용도로 사용된다.null
데이터베이스 세그먼트에 액세스할 때 애플리케이션 프로그램은 또한 매개변수로 SSA(세그먼트 검색 인수)를 사용하여 필요한 세그먼트를 지정한다.여기에는 일반적으로 필요한 세그먼트 유형과 핵심 필드의 내용이 포함된다.null
PL/I를 제외한 모든 언어의 경우, 호출의 첫 번째 매개 변수는 기능 코드 - 4자 필드(예:“GU ” (Get Unique), “GN ” (Get Next), “REPL" (교체), 그리고 "ISRT" (삽입).PL/I를 사용하는 경우 이 언어가 마지막 파라미터를 비트 0에 '1'로 표시하지 않는 방식으로 인해 첫 번째 파라미터는 대신 다음 파라미터의 수를 포함하는 전체 단어(Fixed Bin(31)여야 한다.null
COBOL 프로그램의 일반적인 통화는CALL “CBLTDLI” USING GU, Stores-Database-PCB, Stores-Segment-Area, Stores-Root-SSA프로그램은 요청된 데이터가 검색되어 Segment-Area에 배치될 때까지 자동으로 대기한다.PCB에 포함된 상태 코드는 공백(모두 잘 된 경우) 또는 일부 정보 또는 오류 코드로 업데이트된다.null
PL/I 프로그램의 일반적인 통화는CALL PLITDLI(FOUR, GU, Stores-Database-PCB, Stores-Segment-Area, Stores-Root-SSA);.
참조
- ^ "IBM z/VSE Products and components". IBM. Retrieved 2009-06-27.