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 653 게시물 읽기
No. 653
[질문]DB와 C언어 연동에서..초급
작성자
엄정용(kbjung98)
작성일
2003-03-19 21:03
조회수
4,661

#include <stdio.h>

EXEC SQL INCLUDE SQLCA;

EXEC SQL WHENEVER SQLERROR CALL error_handler();

void error_handler();

main()

{

 

EXEC SQL begin declare section;

char ename[20], pwd[20], tbname[20];

EXEC SQL end declare section;

 

printf("유저 ID를 입력하세요 : ");

gets(ename);

printf("유저 PassWord를 입력하세요 : ");

gets(pwd);

printf("생성할 Table name을 입력하세요 : ");

gets(tbname);

 

 

EXEC SQL connect :ename identified by :pwd;

 

EXEC SQL create table :tbname(a int, b char(10));

EXEC SQL disconnect all;

printf("Bye!!\n");

}

 

void error_handler()

{

 

fprintf(stderr,"\n** SQLCODE=(%d)", sqlca.sqlcode);

 

if(sqlca.sqlerrm.sqlerrml)

{

fprintf(stderr,"\n** SQL Server Error");

fprintf(stderr,"\n** %s", sqlca.sqlerrm.sqlerrmc);

}

fprintf(stderr,"\n\n");

 

 

exit(-1);

}

 

 

위의 프로그램을 컴파일후 실행시키면...

SQLCODE=(-102)

SQL Server Error

Incorrect syntax near '@sql0_tbname'.

3줄의 에러 메세지가 뜹니다.

어떻게 해결해야 하는지...

그리고 왜 에러가 뜨는지에 대해 전문가분들의

많은 조언 부탁드립니다.

꼭 부탁드립니다. 공부하는 학생이라...ㅡ.ㅡ

수고스러우시겠지만...부탁드릴께요.

E-mail : kbjung98@korea.com

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

table, column, index, host variables등을 사용할때는 dynamic sql을 사용하여야 한다

EXEC SQL create table :tbname (a int, b char(10))

 

위 부분을 아래와 같이 수정하면 된다

 

CS_CHAR sqlstring[200];

sprintf(sqlstring, "create table %s (a int, b char(10))" , tbname);

EXEC SQL execute immediate :sqlstring;

 

앙앙님이 2004-03-03 23:31에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
657좀 도와주세요...-_-
민경호
2003-03-26
3508
658┕>Re: 좀 도와주세요...-_-
김영수
2003-03-26 15:33:20
3542
660 ┕>Re: Re: 좀 도와주세요...-_-
민경호
2003-03-27 14:11:04
3632
656에러에 대한 문의
노일용
2003-03-21
3789
655날짜 관련 질문입니다. [2]
초보
2003-03-21
5728
653[질문]DB와 C언어 연동에서..초급 [1]
엄정용
2003-03-19
4661
652sybase에서 odbc설정방법은???? [1]
김상호
2003-03-16
5002
650고수님들 꼭 알려주세요....ㅜㅜ [1]
초보
2003-03-11
4191
643디비의 사용량을 알수 있는 방법. [1]
김학만
2003-03-04
3956
646┕>Re: 디비의 사용량을 알수 있는 방법.
지연
2003-03-10 15:23:46
3697
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.029초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다