Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
bde설정에서 오라클은..?
델파이 에서 bde엔진을 이용해서 db grid 에 내용을 뿌려주는 연습을 하려고 합니다.
그런데 먼저 오라클 net 을 설정하라고 하는데...접
초보인 저로서는 넘 어렵네여
회사 오라클 서버명은 알고 있구요....
oracle net 설정과 bde설정을 초보가 알수 있게금 자세하게 가르쳐 주시면 감사하겠습니다.
1
COMMENTS
꼴통
•
2001.02.16 00:24
이자료는 한델에 있는 자료입니다.
전에 제가 필요해서 TEXT FILE로 만들어 두었던 건데
유용하게 써먹네여..
보시고 참고하시면 될것 같습니다.
[오라클 연결을 위해 필요한 것들]
- 델파이 SQL Links
- 오라클 클라이언트 : SQL*net
일단 델파이를 설치할 때, 오라클 드라이버를 선택해야 합니다. 그러면 SQLORA32.DLL,
SQLD_ORA.DLL 등 몇 개의 파일이 복사되는데 이것들을 'SQL Links'라고 부릅니다.
그리고, 오라클사에서 제공하는 오라클 클라이언트(SQL*Net)를 설치해야 합니다.
여기에는 나중에 BDE 설정에서 보게 될 ORA7WIN.DLL, ORA72.DLL, ORA73.DLL 등이
설치된답니다. 이 파일들이 존재하는 디레토리는 반드시 패스에 잡혀 있어야 합니다.
오래된 버전의 오라클 클라이언트는 설치 시 autoexec.bat의 패스에 틀린 디렉토리를
입력하기도 합니다.
참고적으로 델파이 DB 에플리케이션이 오라클에 연결을 시도하면 BDE가 SQLORA32.DLL을
메모리에 로드하고 이 DLL은 다시 Vendor Init 파일인 ORA*.DLL 파일을 통해 데이터베이스
서비스를 제공한답니다.
[오라클 연결 설정 과정]
- 오라클 데이터베이스 에일리어스 등록 : 오라클 Net Easy Config
- BDE 설정과 에일리어스 등록 : 델파이 BDE Administrator
2. 오라클 데이터베이스 에일리어스 등록
======================================
오라클 데이터베이스 에일리어스(alias) 설정과정은 간단하게 말씀 드립니다.
TCP/IP 프로토콜을 사용할 경우, 'Net Easy Config' 유틸리티에서 서버 IP 주소와
서버 Instance Name(디폴트: ORCL, 서버 관리자에게 문의), 에일리어스만 입력하면
등록됩니다. 이 과정을 좀더 자세히 기술하면 다음과 같습니다.
- Add New Services를 선택후 Service Name을 입력한다.(프로젝트명으로 하는걸 권장)
- Protocol을 선택한다.(이때 Oracle 서버에서 제공하는 Protocol만 사용이 가능하나
사용해본 결과 TCP/IP가 제일 빠르다고 판단됨)
- TCP/IP를 선택했으면 서버의 IP Address를 입력한다.
- Protocol에서 Name Pipe를 선택했으면 ServerName을 입력한다.
- DataBase SID를 입력한다.(Oracle Server설치시 입력한 SID, Default는 ORCL)
- (Oracle 8)Test Service를 선택하여 사용자명과 비밀번호를 입력후 Test한다.
(default user/passwd는 system/manager)
- Finish를 선택한다.
도스창에서 tnsping 이나 tnsping32를 사용하여 등록한 에일리어스가 제대로
연결되는 확인할 필요가 있지요. 물론, 테스트에 SQL*Plus를 사용할 수 도 있습니다.
tnsping <오라클 데이터베이스 에일리어스>
여기서의 에일리어스는 BDE의 에일리어스와 다르다는 것을 기억하세요. 이미 짐작하
셨겠지만, 델파이 에플리케이션에서 연결 과정은 다음과 같습니다.
[델파이 에플리케이션] -> [BDE 에일리어스] ->
[오라클 DB 에일리어스] -> [오라클 데이터베이스]
3. BDE 설정과 에일리어스 등록
=============================
BDE 설정은 약간 복잡합니다.
BDE Administrator를 실행하고 Configuration ->Drivers->Native -> ORACLE 순서로
차레로 선택합니다. 오른쪽의 Definition 목록에서 다음의 것들을 정확히 설정해
주어야 합니다.
DLL32 : SQLORA8.DLL, SQLORA32.DLL, SQLD_ORA.DLL 등
VENDER INIT : ORA7WIN.DLL, ORA72.DLL, ORA73.DLL, ora803.dll
NET PROTOCOL : <서버 접속에 사용할 프로토콜>
먼저 DLL32는 변경할 필요가 없을 겁니다. 델파이가 설치될 때 알아서 설정해 주니까요.
참고로 Oracle 8이면 SQLORA8.DLL을 미만이면 SQLORA32.DLL이 설정되어 있습니다.
Vendor Init 에서 오라클 서버 버전에 맞는 DLL을 선택합니다.
ORA7WIN.DLL : 오라클 7.0
ORA72.DLL : 오라클 7.2
ORA73.DLL : 오라클 7.3
OCI.dll : 오라클 8.0 (ORA83.DLL 아님!)
설정한 DLL이 없거나 패스가 잡혀있지 않아 BDE가 DLL 파일을 메모리에 로드하는데
실패했을 경우, 다음과 같은 에러 메시지가 난답니다.
Vendor initalization failed.
Cannot load an IDAPI service library.
NET PROTOCOL에는 오라클 서버가 제공하는 프로토콜을 선택합니다. 보통 TNS나
TCP/IP를 많이 사용하는데 정확한 것은 서버 관리자에게 문의하세요.
이제 BDE 에일리어스를 만들 차레입니다.
BDE Administrator의 Database 페이지로 와서 메뉴의 Object - New 항목을 선택해
새로운 에일리어스 만듭니다. Database Driver Name을 물으면 'ORACLE'를 선택하고
확인을 누릅니다. 그러면 데이터베이스 트리 아래에 새로운 항목이 생성되지요.
여기에 BDE 에일리어스 이름을 입력합니다. 이름을 입력한 후, 오른쪽 Definition
목록에서 다음의 것들을 입력해 줘야 하지요.
SERVER NAME : <오라클 DB 에일리어스>
USER NAME : <사용자 아이디>
여기서 Server Name은 아까 등록한 오라클 DB 에일리어스를 말합니다.
Service명뒤에 '.World'가 붙지요. 그리고, User Name은 오라클 서버의 계정
아이디를 의미합니다.
참고로 여기서 Configuration 페이지의 항목과 중복되는 것들이 몇 개있는데
항상 에일리어스 항목이 우선시 되며 연결시에 Configuration 페이지의 항목을
오버라이딩하지요. Configuration 페이지의 항목은 디폴트 값이라고 생각하시면
됩니다.
항목을 다 입력했으면 메뉴의 Object - Apply를 선택해서 에일리어스 정보를
저장합니다.
이제 델파이 에플리케이션을 만들 시간이지요.
테이블(TTable)이나 큐어리 컴포넌트(TQuery)의 DatabaseName 프로퍼티에
방금 등록한 BDE Ailas를 설정하면 오라클 접속이 완료된겁니다.
그에 앞서 SQL Explorer나 데이터베이스 데스크탑에서 설정한 BDE 에일리어스가
제대로 동작하는지 확인해 보는 것이 좋습니다.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
사발우성
•
2001.02.16 01:26
2
COMMENTS
/
0
LIKES
VB를 델루 포팅중 막히는 곳이 있어서 질문함당...^^;;
왕초보
•
2001.02.16 02:51
For i = 0 To list1.ListCount - 1 If list1.ItemData(i) = 1 Then sql = "select * fro...
사발우성
•
2001.02.16 17:40
답변 감솨여.....^^ 오늘도 존하루 보내시길..... 왕초보 wrote: > For i = 0 To list1.ListCount - ...
nky
•
2001.02.16 01:26
1
COMMENTS
/
0
LIKES
dbgrid.....
nky
•
2001.02.16 01:52
***********
그래써따
•
2001.02.16 01:16
1
COMMENTS
/
0
LIKES
mysql
^-_-^
•
2001.02.22 20:12
yo` 흠...데이터만은 리눅스 서버쪽에 설치할수 있습니다. :) 일단 데이터(테이블)을 옮기는 간단한 ...
진
•
2001.02.16 01:03
1
COMMENTS
/
0
LIKES
여러개의 아이콘을 가지는 DLL만들기
최용일
•
2001.02.16 02:58
안녕하세요. 최용일입니다. 만들고 싶은신 리소스DLL은 간단합니다. 먼저 델파이에 있는 이미지에디...
초보델피언
2001.02.16 00:59
0
COMMENTS
/
0
LIKES
이런 황당한 코딩이...ㅡㅡ;; 제발 도와주세요
zerodog
•
2001.02.16 00:43
1
COMMENTS
/
0
LIKES
광란자님 근데여...
광란자
•
2001.02.16 00:53
APTRENTQuery.SQL.Add('Where NAME3 =' + #39 + EDSDONG.Text + #39 ); ==>APTRENTQuery.SQL.Add('Wher...
깨구락지
•
2001.02.16 00:35
1
COMMENTS
/
0
LIKES
애플리케이션 배포시에...
광란자
•
2001.02.16 00:48
당연히 BDE를 깔아야져? BDE는 아마 자료실에 있을겁니다. 그 외에는 사용한 DLL 등도 같이 카피하시면...
엄성철
2001.02.16 00:35
0
COMMENTS
/
0
LIKES
오라클 라이센스
초보(왕)
•
2001.02.16 00:10
1
COMMENTS
/
0
LIKES
북마크에대해서 물어볼께요.
광란자
•
2001.02.16 00:27
SetBookMark, GetBookMark, FreeBookMark 가 있습니다. 검색을 해 보시든지....아니면 델파이 헬프가 가...
뿌요
•
2001.02.15 23:58
2
COMMENTS
/
0
LIKES
Field의 getText와 SetText문젭니다..
광란자
•
2001.02.16 00:34
table1SetText(Sender: TField; const Text: String); 여기서 Text가 상수 이군여.. 상수는 못 바꾸...
뿌요
•
2001.02.16 01:18
..
명지니
•
2001.02.15 23:38
1
COMMENTS
/
0
LIKES
프린터 정보 가져오는 함수... DPI
김지영
•
2001.03.03 02:46
Printer.BeginDoc; GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSX) ---> DPI값 가져오는 함수임다....
강경진
•
2001.02.15 23:34
1
COMMENTS
/
0
LIKES
탐색기에서 팝업메뉴에 내 어플을 등록하려면..
kylix
•
2001.02.16 05:13
강좌란을 참고하세요... 강경진 wrote: > 탐색기에서 팝업메뉴에 내어플을 추가하고 싶습니다.
초보1
2001.02.15 23:25
0
COMMENTS
/
0
LIKES
10원 미만 절사
이창훈
•
2001.02.15 23:10
1
COMMENTS
/
0
LIKES
bde설정에서 오라클은..?
델파이 에서 bde엔진을 이용해서 db grid 에 내용을 뿌려주는 연습을 하려고 합니다. 그런데 먼저 오라클 net 을 설정하라고 하는데...접 초보인 저로서는 넘 어렵네여 회사 오라클 서버명은 알고 있구요.... oracle net 설정과 bde설정을...
꼴통
•
2001.02.16 00:24
이자료는 한델에 있는 자료입니다. 전에 제가 필요해서 TEXT FILE로 만들어 두었던 건데 유용하게 써먹네...
이승근
•
2001.02.15 22:59
1
COMMENTS
/
0
LIKES
error list
kylix
•
2001.02.16 05:15
에러가 발생하면 밑에 에러리스트가 나타나죠? 그 에러를 마우스로 클릭한뒤(그럼 파랗게 초점이 잡히죠)에...
만도
2001.02.15 22:53
0
COMMENTS
/
0
LIKES
COM의 Event에 대해...
최광욱
2001.02.15 22:47
0
COMMENTS
/
0
LIKES
Indy MD5 컴포넌트로 암호화/복호화 방법을 알고싶어요.
송진출
•
2001.02.15 22:37
1
COMMENTS
/
0
LIKES
프로그램실행시 아이콘을 ...
kylix
•
2001.02.16 05:16
강좌란이나 자료실, Q&A에서 검색해보시면 많은 자료가 있습니다. 송진출 wrote: > 프로그램 실행시 아...
완전초보
2001.02.15 22:22
0
COMMENTS
/
0
LIKES
dbNavigator 를 자동 클릭하게끔....
완전초보
•
2001.02.15 21:54
1
COMMENTS
/
0
LIKES
왜 이럴까요?
초보자
•
2001.02.15 22:07
완전초보 wrote: > 또 다시 질문을 드립니다. > > id := 'test'; > with adoquery1 d...
이창훈
2001/02/15 23:10
Views
420
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
전에 제가 필요해서 TEXT FILE로 만들어 두었던 건데
유용하게 써먹네여..
보시고 참고하시면 될것 같습니다.
[오라클 연결을 위해 필요한 것들]
- 델파이 SQL Links
- 오라클 클라이언트 : SQL*net
일단 델파이를 설치할 때, 오라클 드라이버를 선택해야 합니다. 그러면 SQLORA32.DLL,
SQLD_ORA.DLL 등 몇 개의 파일이 복사되는데 이것들을 'SQL Links'라고 부릅니다.
그리고, 오라클사에서 제공하는 오라클 클라이언트(SQL*Net)를 설치해야 합니다.
여기에는 나중에 BDE 설정에서 보게 될 ORA7WIN.DLL, ORA72.DLL, ORA73.DLL 등이
설치된답니다. 이 파일들이 존재하는 디레토리는 반드시 패스에 잡혀 있어야 합니다.
오래된 버전의 오라클 클라이언트는 설치 시 autoexec.bat의 패스에 틀린 디렉토리를
입력하기도 합니다.
참고적으로 델파이 DB 에플리케이션이 오라클에 연결을 시도하면 BDE가 SQLORA32.DLL을
메모리에 로드하고 이 DLL은 다시 Vendor Init 파일인 ORA*.DLL 파일을 통해 데이터베이스
서비스를 제공한답니다.
[오라클 연결 설정 과정]
- 오라클 데이터베이스 에일리어스 등록 : 오라클 Net Easy Config
- BDE 설정과 에일리어스 등록 : 델파이 BDE Administrator
2. 오라클 데이터베이스 에일리어스 등록
======================================
오라클 데이터베이스 에일리어스(alias) 설정과정은 간단하게 말씀 드립니다.
TCP/IP 프로토콜을 사용할 경우, 'Net Easy Config' 유틸리티에서 서버 IP 주소와
서버 Instance Name(디폴트: ORCL, 서버 관리자에게 문의), 에일리어스만 입력하면
등록됩니다. 이 과정을 좀더 자세히 기술하면 다음과 같습니다.
- Add New Services를 선택후 Service Name을 입력한다.(프로젝트명으로 하는걸 권장)
- Protocol을 선택한다.(이때 Oracle 서버에서 제공하는 Protocol만 사용이 가능하나
사용해본 결과 TCP/IP가 제일 빠르다고 판단됨)
- TCP/IP를 선택했으면 서버의 IP Address를 입력한다.
- Protocol에서 Name Pipe를 선택했으면 ServerName을 입력한다.
- DataBase SID를 입력한다.(Oracle Server설치시 입력한 SID, Default는 ORCL)
- (Oracle 8)Test Service를 선택하여 사용자명과 비밀번호를 입력후 Test한다.
(default user/passwd는 system/manager)
- Finish를 선택한다.
도스창에서 tnsping 이나 tnsping32를 사용하여 등록한 에일리어스가 제대로
연결되는 확인할 필요가 있지요. 물론, 테스트에 SQL*Plus를 사용할 수 도 있습니다.
tnsping <오라클 데이터베이스 에일리어스>
여기서의 에일리어스는 BDE의 에일리어스와 다르다는 것을 기억하세요. 이미 짐작하
셨겠지만, 델파이 에플리케이션에서 연결 과정은 다음과 같습니다.
[델파이 에플리케이션] -> [BDE 에일리어스] ->
[오라클 DB 에일리어스] -> [오라클 데이터베이스]
3. BDE 설정과 에일리어스 등록
=============================
BDE 설정은 약간 복잡합니다.
BDE Administrator를 실행하고 Configuration ->Drivers->Native -> ORACLE 순서로
차레로 선택합니다. 오른쪽의 Definition 목록에서 다음의 것들을 정확히 설정해
주어야 합니다.
DLL32 : SQLORA8.DLL, SQLORA32.DLL, SQLD_ORA.DLL 등
VENDER INIT : ORA7WIN.DLL, ORA72.DLL, ORA73.DLL, ora803.dll
NET PROTOCOL : <서버 접속에 사용할 프로토콜>
먼저 DLL32는 변경할 필요가 없을 겁니다. 델파이가 설치될 때 알아서 설정해 주니까요.
참고로 Oracle 8이면 SQLORA8.DLL을 미만이면 SQLORA32.DLL이 설정되어 있습니다.
Vendor Init 에서 오라클 서버 버전에 맞는 DLL을 선택합니다.
ORA7WIN.DLL : 오라클 7.0
ORA72.DLL : 오라클 7.2
ORA73.DLL : 오라클 7.3
OCI.dll : 오라클 8.0 (ORA83.DLL 아님!)
설정한 DLL이 없거나 패스가 잡혀있지 않아 BDE가 DLL 파일을 메모리에 로드하는데
실패했을 경우, 다음과 같은 에러 메시지가 난답니다.
Vendor initalization failed.
Cannot load an IDAPI service library.
NET PROTOCOL에는 오라클 서버가 제공하는 프로토콜을 선택합니다. 보통 TNS나
TCP/IP를 많이 사용하는데 정확한 것은 서버 관리자에게 문의하세요.
이제 BDE 에일리어스를 만들 차레입니다.
BDE Administrator의 Database 페이지로 와서 메뉴의 Object - New 항목을 선택해
새로운 에일리어스 만듭니다. Database Driver Name을 물으면 'ORACLE'를 선택하고
확인을 누릅니다. 그러면 데이터베이스 트리 아래에 새로운 항목이 생성되지요.
여기에 BDE 에일리어스 이름을 입력합니다. 이름을 입력한 후, 오른쪽 Definition
목록에서 다음의 것들을 입력해 줘야 하지요.
SERVER NAME : <오라클 DB 에일리어스>
USER NAME : <사용자 아이디>
여기서 Server Name은 아까 등록한 오라클 DB 에일리어스를 말합니다.
Service명뒤에 '.World'가 붙지요. 그리고, User Name은 오라클 서버의 계정
아이디를 의미합니다.
참고로 여기서 Configuration 페이지의 항목과 중복되는 것들이 몇 개있는데
항상 에일리어스 항목이 우선시 되며 연결시에 Configuration 페이지의 항목을
오버라이딩하지요. Configuration 페이지의 항목은 디폴트 값이라고 생각하시면
됩니다.
항목을 다 입력했으면 메뉴의 Object - Apply를 선택해서 에일리어스 정보를
저장합니다.
이제 델파이 에플리케이션을 만들 시간이지요.
테이블(TTable)이나 큐어리 컴포넌트(TQuery)의 DatabaseName 프로퍼티에
방금 등록한 BDE Ailas를 설정하면 오라클 접속이 완료된겁니다.
그에 앞서 SQL Explorer나 데이터베이스 데스크탑에서 설정한 BDE 에일리어스가
제대로 동작하는지 확인해 보는 것이 좋습니다.