펄 DBI
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
펄 DBI(Database Interface)는 펄 프로그래밍 언어에서 데이터베이스에 접근하기 위한 표준 인터페이스이다. 1992년 팀 번스(Tim Bunce)를 중심으로 시작되었으며, 1994년 펄 5 출시와 함께 DBI 모듈로 구체화되었다. DBI는 DBD(Database Driver) 모듈을 플러그인 방식으로 사용하여 다양한 데이터베이스에 독립적인 SQL 코드를 작성할 수 있게 한다. 펄 프로그래머들은 DBI와 DBD를 통해 IBM DB2, Microsoft SQL Server, Oracle과 같은 상용 데이터베이스와 SQLite, PostgreSQL, MySQL과 같은 오픈 소스 데이터베이스에 접근할 수 있다. PHP의 PDO(PHP Data Objects)와 자바의 JDBC(Java Database Connectivity)는 DBI와 유사한 기능을 제공한다.
더 읽어볼만한 페이지
- 펄 모듈 - CGI.pm
CGI.pm은 Perl로 CGI 스크립트 작성을 돕는 모듈로, 객체 지향 방식을 통해 코드 재사용성과 유지보수성을 높이며 HTML 페이지 생성, 폼 데이터 처리, 쿠키 관리 등 다양한 기능을 제공합니다. - 펄 모듈 - Gtk2-Perl
Gtk2-Perl은 Perl 프로그래밍 언어를 위한 GTK+ GUI 라이브러리 바인딩으로, Perl 프로그래머가 GTK+를 사용하여 GUI 애플리케이션을 개발하도록 돕는다. - 공식 웹사이트에 알 수 없는 변수를 사용한 문서 - 브루클린 미술관
브루클린 미술관은 1823년 브루클린 견습생 도서관으로 시작하여 현재 약 50만 점의 소장품을 보유한 뉴욕 브루클린 소재의 미술관으로, 다양한 분야의 예술 작품을 전시하며 특히 아프리카 미술과 여성주의 미술에 대한 기여가 크다. - 공식 웹사이트에 알 수 없는 변수를 사용한 문서 - 광주지방기상청
광주지방기상청은 광주광역시와 전라남도 지역의 기상 예보, 특보, 관측, 기후 정보 제공 등의 업무를 수행하는 기상청 소속 기관으로, 1949년 광주측후소로 설치되어 1992년 광주지방기상청으로 개편되었으며, 기획운영과, 예보과, 관측과, 기후서비스과와 전주기상지청, 목포기상대를 두고 있다.
펄 DBI |
---|
2. 역사
팀 번스는 1992년 다른 사람들과 협업하여 DBI를 지정하는 것을 시작했다.[4] 1992년 9월, 버즈 모스케티는 당시 인기 있는 SQL 기반 데이터베이스, 즉 Interbase, Informix, Oracle, Sybase에 대한 연결을 특징으로 하는 몇 가지 맞춤형 컴파일된 펄(perl) 확장(당시 펄 버전 4 또는 perl4)이 등장했음을 관찰했다. 그는 이러한 맞춤형 버전의 작성자들과 함께 기본 구현의 세부 사항과 별개로 데이터베이스에 대한 공통 인터페이스 계층을 만드는 아이디어를 제시했다. 팀 번스가 1994년 펄5가 출시되면서 리드를 잡았고, 이는 라이브러리(모듈)의 동적, 호출 시점 로딩을 선호하여 맞춤형 컴파일의 필요성을 없애면서, DBI 모듈이 될 것을 구체화하기 시작했다.[2] 2010년 기준으로 펄 커뮤니티는 오픈 소스 모델과 연계하여 CPAN 모듈로 DBI를 유지보수한다. DBD(데이터베이스 드라이버) 모듈들은 DBI의 플러그인 역할을 함으로써 프로그래머들이 데이터베이스와 거의 독립적인 SQL 코드를 자신의 응용 프로그램에 사용할 수 있게 한다. 또, 프로그래머들은 SQL을 작성할 필요 없이 데이터베이스와 더 독립적인 코드를 쓸 수 있도록 펄에 사용할 수 있는 객체 관계형 매퍼들 중 하나(예: DBIx::Class)를 이용하여 DBI와 DBD 모듈들을 간접적으로 사용할 수 있다.
2. 1. 1992년 이전
팀 번스는 1992년 이전부터 다른 사람들과 협업하여 DBI를 지정하기 시작했다.[4] 1992년 9월, 버즈 모스케티는 Interbase, Informix, Oracle, Sybase와 같이 당시 인기 있던 SQL 기반 데이터베이스에 대한 연결을 지원하는 맞춤형 컴파일 펄(perl) 확장(당시 펄 버전 4 또는 perl4)이 등장했음을 관찰했다. 그는 이러한 맞춤형 버전의 작성자들과 함께 기본 구현 세부 사항과 별개로 데이터베이스에 대한 공통 인터페이스 계층을 만드는 아이디어를 제시했다.[2]2. 2. 1992년 ~ 1994년
1992년 9월, 버즈 모스케티는 당시 인기 있는 SQL 기반 데이터베이스, 즉 Interbase, Informix, Oracle, Sybase에 대한 연결을 제공하는 몇 가지 맞춤형 컴파일된 펄(perl) 확장(당시 펄 버전 4 또는 perl4)들이 등장했음을 주목했다.[2] 그는 이러한 맞춤형 버전의 작성자들과 함께 기본 구현 세부 사항과 별개로 데이터베이스에 대한 공통 인터페이스 계층을 만드는 아이디어를 제시했다.[2] 팀 번스가 1994년 펄5가 출시되면서 리드를 잡았고, 이는 라이브러리(모듈)의 동적, 호출 시점 로딩을 선호하여 맞춤형 컴파일의 필요성을 없애면서, DBI 모듈이 될 것을 구체화하기 시작했다.[2]2. 3. 1994년 이후
팀 번스는 1992년부터 다른 사람들과 협업하여 DBI를 지정하기 시작했다.[4] 1994년 펄 5가 출시되면서 팀 번스가 주도하여 라이브러리(모듈)의 동적, 호출 시점 로딩을 선호하여 맞춤형 컴파일의 필요성을 없애면서, DBI 모듈이 될 것을 구체화하기 시작했다.[2] 2010년 기준으로 펄 커뮤니티는 오픈 소스 모델과 연계하여 CPAN 모듈로 DBI를 유지보수한다. DBD(데이터베이스 드라이버) 모듈들은 DBI의 플러그인 역할을 함으로써 프로그래머들이 데이터베이스와 거의 독립적인 SQL 코드를 자신의 응용 프로그램에 사용할 수 있게 한다. 또, 프로그래머들은 SQL을 작성할 필요 없이 데이터베이스와 더 독립적인 코드를 쓸 수 있도록 펄에 사용할 수 있는 객체-관계형 매퍼들 중 하나(예: DBIx::Class)를 이용하여 DBI와 DBD 모듈들을 간접적으로 사용할 수 있다.2. 4. 현재
팀 번스는 1992년 다른 사람들과 협업하여 DBI를 지정하는 것을 시작했다.[4] 2010년 기준으로 펄 커뮤니티는 오픈 소스 모델과 연계하여 CPAN 모듈로 DBI를 유지보수한다.[2] DBD(데이터베이스 드라이버) 모듈들은 DBI의 플러그인 역할을 함으로써 프로그래머들이 데이터베이스와 거의 독립적인 SQL 코드를 자신의 응용 프로그램에 사용할 수 있게 한다. 또, 프로그래머들은 SQL을 작성할 필요 없이 데이터베이스와 더 독립적인 코드를 쓸 수 있도록 펄에 사용할 수 있는 객체 관계형 매퍼들 중 하나(예: DBIx::Class)를 이용하여 DBI와 DBD 모듈들을 간접적으로 사용할 수 있다.3. 기능
DBI와 DBD 펄 패키지들은 펄 프로그래머들이 표준화된 방식으로 수많은 데이터베이스 환경에 접근할 수 있게 한다. 이 시스템은 각 지원되는 데이터베이스 환경을 DBD 드라이버로 구현하며, 이는 여러 공급업체의 하드웨어 장치가 다양한 CPU 플랫폼에서 작동하는 방식과 유사하다. DBD 사용자는 인터넷에서 DBD 구현을 다운로드할 수 있다. DBD 구현은 IBM DB2, Microsoft SQL Server, Oracle과 같은 독점 제품과 SQLite, PostgreSQL, Firebird, MySQL과 같은 자유 소프트웨어 데이터베이스에 존재한다.
3. 1. DBD 드라이버
DBI와 DBD 펄 패키지들은 펄 프로그래머들이 표준화된 방식으로 수많은 데이터베이스 환경에 접근할 수 있게 한다. 이 시스템은 각 지원되는 데이터베이스 환경을 DBD 드라이버로 구현하며, 이는 여러 공급업체의 하드웨어 장치가 다양한 CPU 플랫폼에서 작동하는 방식과 유사하다. DBD 사용자는 인터넷에서 DBD 구현을 다운로드할 수 있다. DBD 구현은 IBM DB2, Microsoft SQL Server, Oracle과 같은 독점 제품과 SQLite, PostgreSQL, Firebird, MySQL과 같은 자유 소프트웨어 데이터베이스에 존재한다.3. 2. 데이터베이스 독립적인 코드 작성
DBD(데이터베이스 드라이버) 모듈은 DBI에 대한 플러그인 역할을 하며, 프로그래머가 응용 프로그램에서 거의 데이터베이스 독립적인 SQL 코드를 사용할 수 있도록 한다. 프로그래머는 또한 SQL을 작성할 필요 없이 더 많은 데이터베이스 독립적인 코드를 위해 DBIx::Class와 같은 펄용 객체-관계형 매퍼 중 하나를 사용하여 DBI 및 DBD 모듈을 간접적으로 사용할 수 있다.DBI와 DBD 펄 패키지들은 펄 프로그래머들이 표준화된 방식으로 수많은 데이터베이스 환경에 접근할 수 있게 한다. 시스템은 각각의 지원되는 데이터베이스 환경을 DBD 드라이버로 구현하며, 이는 마치 여러 업체의 하드웨어 장치들이 각기 다른 CPU 플랫폼에서 동작할 수 있는 것과 동일하다. DBD 사용자들은 인터넷으로부터 DBD 구현체를 다운로드할 수 있다. DBD 구현체들은 IBM DB2, 마이크로소프트 SQL 서버, 오라클 등의 사유 제품들과 SQLite, PostgreSQL, 파이어버드, MySQL 등의 자유 소프트웨어 데이터베이스를 위해 존재한다.
4. 유사 프로젝트
PHP 5는 PHP 데이터 오브젝트/PHP Data Objects영어(PDO)라는 이름의 비슷한 인터페이스가 있다.[5][3] 자바의 자바 데이터베이스 연결(JDBC) 또한 유사하다.
4. 1. PHP
PHP 5는 PHP 데이터 객체(PDO)라는 이름의 비슷한 인터페이스가 있다.[5][3] 자바의 자바 데이터베이스 연결(JDBC) 또한 유사하다.4. 2. 자바
자바의 자바 데이터베이스 연결(JDBC) 또한 유사하다.[5][3]참조
[1]
웹사이트
Reflections on Perl and DBI from an Early Contributor
https://blog.timbunc[...]
2010-07-08
[2]
웹사이트
DBI::Changes - List of significant changes to the DBI - metacpan.org
https://web.archive.[...]
2014-05-09
[3]
웹사이트
PHP: Introduction - Manual
http://www.php.net/m[...]
[4]
웹인용
보관된 사본
https://web.archive.[...]
2018-04-24
[5]
웹사이트
http://www.php.net/m[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com