파워빌더팁
파워빌더에서 Tnsnames.ora 없이 오라클에 접속하기
A4M
2011. 8. 28. 08:48
Tnsnames.ora 파일의 코드가 다음과 같을 경우
TESTDB_local =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = MyServer)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = TESTDB)
)
)
파워빌더에서 오라클 접속하는 스크립트를 다음과 같이 작성합니다.
오라클 10g로 예를 들면,
SQLCA.DBMS = "O10 Oracle10g (10.1.0)"
SQLCA.LogId = 아이디
SQLCA.LogPass = 비밀번호
SQLCA.ServerName = TESTDB_local
SQLCA.AutoCommit = False
Connect;
이렇게 하면 배포할 때도 Tnsnames.ora 파일을 항상 포함시켜야 합니다.
지금까지는 오라클 네트 서비스 이름인 TESTDB_local 을 사용했지만,
오라클 네트 서비스 이름 대신 위에서 파란색 코드 부분을 써도 됩니다. 그럼 다음과 같겠네요.
SQLCA.DBMS = "O10 Oracle10g (10.1.0)"
SQLCA.LogId = 아이디
SQLCA.LogPass = 비밀번호
SQLCA.ServerName = "(DESCRIPTION =" + &
"(ADDRESS_LIST =" + &
"(ADDRESS = (PROTOCOL = TCP)(HOST = MyServer)(PORT = 1521))" + &
")" + &
"(CONNECT_DATA =" + &
"(SERVICE_NAME = TESTDB)" + &
")" + &
")"
"(ADDRESS = (PROTOCOL = TCP)(HOST = MyServer)(PORT = 1521))" + &
")" + &
"(CONNECT_DATA =" + &
"(SERVICE_NAME = TESTDB)" + &
")" + &
")"
SQLCA.AutoCommit = False
이렇게 하면 배포할 때도 Tnsnames.ora 파일은 필요가 없습니다.
이렇게 하면 배포할 때도 Tnsnames.ora 파일은 필요가 없습니다.