pro*c의 db이름은 어디에 설정되어 있을까요?
pro*c에서 디비 커넥션 소스를 보고 있는데요
아이디 하고 패스워드만 주니 접속이 잘 됩니다.
근데 궁금한게 tnsnames.ora파일에 있는 디비이름이 YONG 이라면
이 YONG을 pro*c중의 어디 한군데에는 이걸 사용한다고 적어 주어야 할 것같은데 그게 소스를 아무리 찾아도 이상하게 없어요. 따로 환경파일이나...다른곳에 저장해두는 곳이 있는지 궁금하네요...
tnsnames.ora 파일
YONG =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 2xx.xx.xx.xxx)
(Port = 1521)
)
)
(CONNECT_DATA = (SID = db2)
)
)
실제사용하고 있는 pro*c 접속루틴
EXEC SQL BEGIN DECLARE SECTION;
varchar Tuserid[20];
varchar Tpasswd[20];
EXEC SQL END DECLARE SECTION;
strcpy( (char *) Tuserid.arr, userid);
Tuserid.len = strlen((char *) Tuserid.arr);
strcpy( (char *) Tpasswd.arr, passwd);
Tpasswd.len = strlen((char *) Tpasswd.arr);
EXEC SQL
CONNECT :Tuserid IDENTIFIED BY :Tpasswd;
이렇게 하면 됩니다.
Re: 이렇게 하면 됩니다.
답변감사합니다.
USING에 디비이름을 붙여주면 된다는 말씀이시죠...
근데 sql_context ctx; 는 무슨 기능을 하는건가요? 또 궁금하네요
음..그걸 안뺐군요.. ㅎㅎㅎㅎㅎ
스레드 쓸때 사용하는 겁니다.
http://www.csee.umbc.edu/help/oracle8/index.htm
여기 보면
PRO*C에 대한 메뉴얼(?)
이 있습니다.
참고하세요..
댓글 달기