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
운영게시판
최근게시물
Sybase Q&A 1544 게시물 읽기
No. 1544
안녕하세요 C 로 sybase 커넥트 하는거에 대해서 여쭤보려고 합니다.
작성자
mers4u
작성일
2006-05-17 21:43
조회수
4,696

안녕하세요 강남구 입니다.... solaris 9 x86 버전에서 cpre 를 이용하여서 sybase 에 insert 를 시키려고 합니다....(소스는 밑쪽에 있습니다.)

 

근데 커넥션 부분에서 에러가 발생하네요.. 고수님들의 조언 부탁드립니다...

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

/opt/sybase/OCS-12_5/bin/cpre -C KR_C -m -DSYBASE bbb.cp

 

cc -g -c -I. -I/opt/sybase/OCS-12_5/include bbb.c

 

cc -g -o bbb bbb.o -L/opt/sybase/OCS-12_5/lib -lct -lcs -ltcl -lcomn -lintl -Bdynamic -lnsl -ldl -lm -L/usr/lib -lnsl -lsocket -lresolv

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

위와 같은 컴파일 과정을 거쳐서 나온 bbb 파일을 실행한 결과

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

insert into tbl_bs_proc_config(ess_type,switch_id,proc_name) values(10,'abce','qweq')
DB CONNECT 실패, user=sa, password=sybase SQLCODE = -101188867 !
DB CONNECT 실패, user=sa, password=sybase SQLCODE = -101188867 !
DB CONNECT 실패, user=sa, password=sybase SQLCODE = -101188867 !
DB CONNECT 실패, user=sa, password=sybase SQLCODE = -101188867 !
...DB CONNECT ERROR

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

이렇게 뜨고 커넥션을 못하는 상태 입니다....

 

 

EXEC SQL INCLUDE SQLCA;


#include <stdio.h>
#include <time.h>
#include <memory.h>
#include <unistd.h>
#include <signal.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/varargs.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <sybhesql.h>
#include <sybtesql.h>
#include <sqlca.h>
#include <sqlda.h>

#define SQLCODE sqlca.sqlcode
#define SQLNOTFOUND 100
#define DB_SQL_ERROR 200
#define SQL_ALREADY_EXIST -2601
#define SQL_DATA_NULL -1
#define OK 0
#define NOK -1

 

int iDBConnect()
{

EXEC SQL BEGIN DECLARE SECTION;
char user[10];
char password[10];
char dbname[10];
char server_name[30];
EXEC SQL END DECLARE SECTION;


strcpy(user,"sa");
strcpy(password,"sybase");
strcpy(dbname,"emove");
strcpy(server_name,"-N vmSparc");

SQLCODE = 0 ;
EXEC SQL CONNECT :user IDENTIFIED BY :password USING :server_name;
if( SQLCODE < 0 ) {

printf("DB CONNECT 실패, user=%s, password=%s SQLCODE = %d !\n", user, password, SQLCODE );


return( NOK ) ;
}

EXEC SQL USE :dbname ;

if( SQLCODE < 0 ) {

printf("DB USE 실패, dbname=%s SQLCODE = %d !\n", dbname, SQLCODE );

return( NOK ) ;
}

return( OK ) ;
}

void
vDBDisconnect()
{
EXEC SQL DISCONNECT ALL;

if( SQLCODE < 0 ) {

printf("DB DISCONNECT 실패SQLCODE = %d !\n", SQLCODE );

}
}


void main(void)

{

EXEC SQL BEGIN DECLARE SECTION;
char sqlstring[600];
EXEC SQL END DECLARE SECTION;
int ess_type=10;
char switch_id[10];
char proc_name[5];

strcpy(switch_id,"abcd");
strcpy(proc_name,"qwer");
int itry=0;


sprintf(sqlstring, "insert into tbl_bs_proc_config(ess_type,switch_id,proc_name) values(%d,\'%s\',\'%s\')",ess_type,switch_id,proc_name);

while(iDBConnect() != OK)
{

if(itry < 3)
{
sleep(1);
itry++;
}

else
{

printf("...DB CONNECT ERROR \n");
exit(-1);

}

}
printf("Connection successful!!!!!!!!");

EXEC SQL PREPARE insert_statement FROM :sqlstring;

EXEC SQL EXECUTE insert_statement;



EXEC SQL COMMIT;

 


vDBDisconnect();
}

 

 

 

 

이 글에 대한 댓글이 총 1건 있습니다.

error을 알기위해....

101188867 을 16진수로 바꾸면

 

6080503이케 되는데 2자리씩 읽으면

6    8   5    3 이케됨

Layer; 6 - Directory Service Layer

Origin: 8 - Internal Directory Control Layer Error

Severity: 5 Fatal

Error: 3 - Requested server name not found.

즉 뭐시냐......interfaces 파일에 없는 서버이름을 주었다는 야그입니다.

 

vmSparc이라는 서버이름이 interfaces에 등록이 안되어 있다는 야그입니다.

 

 

등록하고 하시고...isql로 접속 되는지 확인 하시고....해보세요

 

지연님이 2006-05-18 13:44에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1547지연님 나이가 어떻게 되시는지 ??? [1]
까먹지마
2006-05-19
3983
154611.5 버젼에서 필드 길이 변경하는 방법없나요? [2]
초보
2006-05-19
3450
1545sybase 웹으로 연동시 연결오류문제.. [1]
유원기
2006-05-18
3370
1544안녕하세요 C 로 sybase 커넥트 하는거에 대해서 여쭤보려고 합니다. [1]
mers4u
2006-05-17
4696
1542dbcc 에 대해서 ;; [3]
까먹지마
2006-05-17
4436
1541sp_displaylogin... [1]
까먹지마
2006-05-17
3592
1540샘플 dblibrary 컴파일 시 에러 [1]
sybase
2006-05-16
3540
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다