2010-02-18 3 views
0

내 함수는 포인터로 *d을 매개 변수로 사용합니다.C 오류 SQL 포인터

나는 그 줄을 썼다 - EXEC SQL VAR d->x is STRING; 사실 나는 d->x의 값을 저장할 수있는 변수가 필요하다. 그 변수를 가진 은 다른 작업을 조작 할 수 있습니다.

나는 당신의 제안을 기다리고 다음과 같은 오류를

Semantic error 
EXEC SQL VAR d->x is STRING; 

를 얻을. 위의 당신의 문자열이 있다고 가정

char query[BIG_ENOUGH]; 
sprintf(query, "EXEC SQL VAR %s is STRING;", d->x); 

을 : 내가 생각한다면

+2

코드를 게시하여 사용중인 데이터베이스를 알려주십시오. –

+0

누구에게 그런 오류가 있습니까? 'proc'을 사용하여 소스를 컴파일 했습니까? – qrdl

+0

oh qrdl, 컴파일 할 때 make 파일을 사용하고 있습니다. – ambika

답변

1

, 당신은 char 배열 또는 충분한 메모리와 char 포인터를 가지고 있고, 다음에 쿼리 문자열을 넣을 d->x에 있으며 SQL 쿼리에서 문자열 값을 원한다고 가정합니다. 나는 당신의 SQL 쿼리가 잘 형성되었는지는 모르겠다.

원하는 내용이 아닌 경우 자세한 정보를 게시해야합니다.

+0

Miss! EXEC SQL VAR은 오라클의 임베디드 SQL 문이며 소스에 직접 포함될 수 있습니다. – qrdl