database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 13 게시물 읽기
No. 13
Re: perl의 DBI/DBD 설치방법이 궁금합니다.
작성자
조용일
작성일
1999-10-21 17:44
조회수
36,869

> 이번에 리눅스 아파치 웹서버에서 perl을 이용하여 프로그램을 하려고 하는데 DBD/DBI가 설치가 되지 않군요

 

인용합니다.

...

라. Perl의 DBI/DBD module 이용

 

그보다 더 편하고, 또 기존에 pgSQL이나 mySQL로 사용하던 code를 쉽게 Oracle로

적용할 수 있는 것이 DBI module을 이용한 방법이다.(단, perl로 작성하신 분만 해당. ^^;)

일단, CPAN site에서 가서 DBI와 DBD module을 가져오자. (필자가 사용한 version은

DBD-Oracle-0.54와, DBI-1.02 이다)

 

DBI를 compile하고, DBD를 compile한다.

(순서에 주의. 또, perl 5.004이후 version이 필요하다.

Alzza 5.1을 쓴다면, perl 5.004_04이다.)

 

su - -> root로 login, perl library directory(/usr/lib/perl5) permission때문임.

local에 설치한 경우는 불필요.

. /usr/local/bin/oraenv

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

 

mkdir src

cd src

tar zxf ../DBI-1.02.tar.gz

tar zxf ../DBD-Oracle-0.54.tar.gz

 

cd DBI-1.02/ -> DBI를 먼저 설치해야 한다.

perl Makefile.PL -> pRPC를 요구하는 데, 이는 proxy server를 사용할 경우 필요하다.

make

make test

make install

cp Driver.xst /usr/lib/perl5/site_perl/i386-linux/auto/DBI/ -> 왜 필요한지 모름 ?.?

 

cd ../DBD-Oracle-0.54/ -> DBD를 설치한다. 다른 DBMS용 DBD도 이런방법으로 설치한다.

perl Makefile.PL

make

make test

make install

 

이제 perl에서 oracle을 접속하기 위한 준비는 다 되었다.

앞의 Pro*C에서 한 것과 똑같은 일을 하는 perl script를 짜보자.

< 첨부 : test_dbi.pl >

 

#!/usr/bin/perl

use DBI;

 

# ORACLE에 접속한다.

my $userid = 'scott';

my $passwd = 'tiger';

my $dbh = DBI->connect('', $userid, $passwd, 'Oracle');

# 여기에 MySQL, pgSQL을 넣으면,

# 자연스럽게 MySQL이나 pgSQL용

# perl 프로그램이 된다!

unless($dbh) {

warn "Unable to connect to Oracle ($DBI::errstr)\n";

exit 0;

}

 

# Cursor를 선언한다.

$query =

"select TNAME, TABTYPE

from TAB";

 

my $sth = $dbh->prepare($query);

 

unless($sth) {

$dbh->disconnect;

die "ERROR in prepare!\n";

}

 

# Cursor를 open한다.

if ($sth->execute == 0) {

$sth->finish;

$dbh->disconnect;

die "ERROR in execute!\n";

}

 

# Cursor로부터 한줄씩 읽어온다.

while(($name,$type) = $sth->fetchrow){

print "$name $type\n";

}

 

$sth->finish;

$dbh->disconnect;

 

< 첨부끝 : test_dbi.pl >

 

tolkien입니다.

[Top]
No.
제목
작성자
작성일
조회
20SQL*Net 설정시 에러
reverof
1999-10-27
30074
22┕>Re: SQL*Net 설정시 에러
조용일
1999-10-27 16:35:08
29513
3835 ┕>Re: Re: SQL*Net 설정시 에러
herrchen
2001-04-24 18:54:08
28289
24┕>Re: SQL*Net 설정시 에러
문태준
1999-11-02 00:55:48
27985
16혹시 Oracle8i와 PHP연동해서 잘 사용하시는분 계세요?
탱글이
1999-10-25
30459
17┕>Re: 혹시 Oracle8i와 PHP연동해서 잘 사용하시는분 계세요?
조용일
1999-10-26 08:04:46
30776
18 ┕>Re: Re: 혹시 Oracle8i와 PHP연동해서 잘 사용하시는분 계세요? 패치내용
탱글이
1999-10-26 11:00:47
30553
19  ┕>Re^3: 혹시 Oracle8i와 PHP연동해서 잘 사용하시는분 계세요? 패치내용
조용일
1999-10-27 10:44:12
29689
21   ┕>Re: Re^3: 혹시 Oracle8i와 PHP연동해서 잘 사용하시는분 계세요? 패치내용
탱글이
1999-10-27 13:01:02
29547
14oracle8i 와 델파이로 작성한 프로그램 문제
자룡
1999-10-23
34675
15┕>Re: oracle8i 와 델파이로 작성한 프로그램 문제
조용일
1999-10-23 13:43:56
33833
12perl의 DBI/DBD 설치방법이 궁금합니다.
이영구
1999-10-21
36978
13┕>Re: perl의 DBI/DBD 설치방법이 궁금합니다.
조용일
1999-10-21 17:44:25
36869
9oracle 8설치시 rdbms.vrf Error
최군일
1999-10-18
29323
3836┕>Re: oracle 8설치시 rdbms.vrf Error
herrchen
2001-04-24 19:04:44
29342
8oracle 설치시 Error
구윤모
1999-10-18
28124
10┕>Re: oracle 설치시 Error
조용일
1999-10-18 18:06:01
36065
11┕>Re: oracle 설치시 Error
Proman
1999-10-20 05:09:26
35083
4아래질문에 이어서...
홍진선
1999-10-16
27769
5┕>Re: 아래질문에 이어서...
정재익
1999-10-16 22:49:39
27725
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2020 DSN, All rights reserved.
작업시간: 0.053초, 이곳 서비스는
	PostgreSQL v13.1으로 자료를 관리합니다