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
운영게시판
최근게시물
PostgreSQL Q&A 1277 게시물 읽기
No. 1277
PQexec함수에 대한 질문
작성자
초보맨
작성일
2000-06-27 18:03
조회수
10,278

void search(PGconn *conn)

{

int i, j, kind;

const char *psql;

char search[100], trash[80], search_value[100] = "\0";

char sql[100] = ""DECLARE search_sql CURSOR FOR select * from kuetbord where";

printf("검색 종류를 선택해주세요.\n");

printf("1.이름\t2.제목\t3.내용\n");

scanf("%d", &kind);

gets(trash);

printf("검색어를 입력해주세요\n");

scanf("%s", search);

gets(trash);

strcat(search_value, " %");

strcat(search_value, search);

strcat(search_value, "%"");

res = PQexec(conn, "BEGIN");

if (!res || PQresultStatus(res) != PGRES_COMMAND_OK)

{

fprintf(stderr,"BEGIN 명령이 실행되지 않았습니다\n");

PQclear(res);

PQfinish(conn);

exit(1);

}

PQclear(res);

 

switch (kind)

{

case 1:

{

strcat(sql," b_name like");

strcat(sql, search_value);

break;

}

case 2:

{

strcat(sql," b_title like");

strcat(sql, search_value);

break;

}

case 3:

{

strcat(sql," b_content like");

strcat(sql, search_value);

break;

}

default:

{

printf("잘못입력 하셨습니다 다시 입력해주세요\n");

start_menue();

break;

}

}

psql = sql;

printf("%s", psql);

res = PQexec(conn, psql);

if (!res || PQresultStatus(res) != PGRES_COMMAND_OK)

{

fprintf(stderr,"DECLARE 명령이 실행되지 않았습니다\n");

PQclear(res);

PQfinish(conn);

exit(1);

}

PQclear(res);

res = PQexec(conn, "FETCH ALL IN search_sql");

if (!res || PQresultStatus(res) != PGRES_TUPLES_OK)

{

fprintf(stderr,"FETCH 명령이 실행되지 않았습니다\n");

PQclear(res);

PQfinish(conn);

exit(1);

}

printf("%d 개의 내용이 검색 되었습니다\n", PQntuples(res));

if (!res || PQresultStatus(res) != PGRES_COMMAND_OK)

{

fprintf(stderr,"SQL문이 실행되지 않았습니다\n");

}

for (j = 0; j < PQnfields(res); j++)

{

printf("%/10s", PQfname(res,j));

 

}

printf("\n");

 

for (i = 0; i < PQntuples(res); i++)

{

for (j = 0; j < PQnfields(res); j++)

{

printf("%/10s", PQgetvalue(res, i, j));

}

printf("\n");

printf("*********************************************************\n");

}

PQclear(res);

res = PQexec(conn, "CLOSE search_sql");

PQclear(res);

res = PQexec(conn, "COMMIT");

PQclear(res);

PQfinish(conn);

 

}

 

윗쪽에 보시면 psql 이라는 변수에값을

"DECLARE search_sql CURSOR FOR select * from kuetbord where b_name like %text%" 라고 값을주고 res = PQexec(conn, psql) 이런식으로 함수를 정의 해보왔는

데 에러가 나오던데요.. PQexec함수의 원형은 PQexec(conn, const char *ptr)인데

왜 실행이 안돼는지요....이해가 너무 안돼요 변수명을 써주면 안돼는 이유가 뭘까요. 알려 주세요 감사합니다.

[Top]
No.
제목
작성자
작성일
조회
1282[질문] JDBC에서 나는 에러 --;
김성윤
2000-06-27
9876
1289┕>Re: [질문] JDBC에서 나는 에러 --;
정재익
2000-06-28 03:28:42
11463
1280디비내의 테이블를 볼 수 잇는 방법이 없을까요...
블루
2000-06-27
10857
1281┕>Re: 디비내의 테이블를 볼 수 잇는 방법이 없을까요...
정재익
2000-06-27 16:02:31
11200
1283 ┕>Re: Re: 디비내의 테이블를 볼 수 잇는 방법이 없을까요...
블루
2000-06-27 16:30:35
11048
1290  ┕>\d 명령도 되용....(내용무)
BiVi
2000-06-28 03:45:54
10756
1294   ┕>Re: \d 명령도 되용....(내용무)
정재익
2000-06-28 13:47:57
10616
1296    ┕>Re: Re: \d 명령도 되용....(내용무)
Coral
2000-06-28 19:54:22
10642
1278mysql 자료를 pgsql에 백업하는 방법..
박미숙
2000-06-27
9843
1279┕>Re: mysql 자료를 pgsql에 백업하는 방법..
정재익
2000-06-27 12:27:33
10319
1277PQexec함수에 대한 질문
초보맨
2000-06-27
10278
1300┕>제발 답변좀 해주세요
초보맨
1999-11-30 12:31:06
10367
1273이 에러는요? type 문제..
조성문
2000-06-26
10928
1275┕>Re: 이 에러는요? type 문제..
정재익
2000-06-26 17:48:55
10940
1272NOTICE: Unrecognized variable client_encoding 이 오류의 의미는?
조성문
2000-06-26
10087
1274┕>Re: NOTICE: Unrecognized variable client_encoding 이 오류의 의미는?
정재익
2000-06-26 17:43:07
11051
1270pg_dump 한 거 복구하는데 Relation *** not found 에러가..
조성문
2000-06-25
11341
1271┕>Re: pg_dump 한 거 복구하는데 Relation *** not found 에러가..
정재익
2000-06-26 01:07:58
12653
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.024초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다