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
운영게시판
최근게시물
Informix Q&A 2454 게시물 읽기
No. 2454
ESQL문좀 봐주세요..ㅠㅠ
작성자
최재환
작성일
2008-02-11 15:21ⓒ
2008-02-11 15:27ⓜ
조회수
8,231

include

EXEC SQL include sqlca;

void main()
{
        EXEC SQL begin declare section;
        char dbname[19];
        char total[32];
        char free[32];
        char dname[32];
        EXEC SQL end declare section;

        printf("Enter name of database:");
        gets(dbname);
        EXEC SQL connect to:dbname;
        if(SQLCODE == 0)
        {
                printf("Database %s is now open.\n",dbname);
                
               EXEC SQL select d.name, sum(c.chksize*c.pagesize)::dec(10,0) as total,
                sum(c.nfree*c.pagesize)::dec(10,0) as free,
                sum((c.chksize*c.pagesize - c.nfree*c.pagesize) /1024/1024)::dec(10,0) as use
                from sysmaster:syschunks c, sysmaster:sysdbspaces d where c.dbsnum = d.dbsnum group by d.name;

                printf("%s\n",dname);
                printf("%s\n",total);
                printf("%s\n",free);
        }
        else
                printf("Error %ld opening database\n",SQLCODE);
        exit(0);
}

이렇게 작성을 했는데...db접속은 잘됩니다....그 다음에 db의 사용률을 가져오는 쿼리를 날리는데.. 아무것도 안나오네요...ㅠㅠ

뭐가 틀렸는지 알려 주세요..

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

변수에 대입을 하고 프린트를 하셔야 합니다.

EXEC SQL BEGIN DECLARE SECTION;
    char v1[10];
    char v2[10];
    char v3[10];
EXEC SQL END DECLARE SECTION;

EXEC SQL select   a ,  b,  c  into  :v1 , :v2  , :v3   from table명   where 조건  ;

printf("%s\n", v1);
printf("%s\n", v2);
printf("%s\n", v3);

이런식으로

윤도경(openbbs)님이 2008-02-11 16:31에 작성한 댓글입니다.

답변을 주신데로 했는데도 안되네요..ㅠㅠ

EXEC SQL select fname, (chksize*pagesize/1024/1024) ,(nfree*pagesize/1024/1024) into :dname,:total,:free from sysmaster:syschunks , sysmaster:sysdbspaces where dbsnum = dbsnum group by fname;


printf("%s\n",dname);
  printf("%s\n",total);
  printf("%s\n",free);

역시나 안되네요,,..ㅠㅠ

최재환(kkoijae)님이 2008-02-11 16:59에 작성한 댓글입니다.

$INFORMIXDIR/demo/esqlc/demo1.ec  여기에 나온 커서를 이용해서
찍어보세요...

윤도경(openbbs)님이 2008-02-11 17:31에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
2461onstat -u 를 해서 user를 보면 root와 informix 가 나오는데...... [8]
ㅠㅠ
2008-02-13
8592
2458흠.. 그래도 안되네요..error가 나는듯.. [5]
초보
2008-02-12
9002
2457다른 테이블 join하기 방법좀...ㅠㅠ [1]
초보
2008-02-11
7708
2454ESQL문좀 봐주세요..ㅠㅠ [3]
최재환
2008-02-11
8231
2449206번 에러 문의드립니다. [1]
하늘이
2008-02-05
7847
2447Linux에서 코딩(c언어)으로 connect하는 방법... [3]
infor
2008-01-31
8034
2446Linux에서 odbc 설정 부분..에서 ..ㅠㅠ [1]
infor
2008-01-30
11051
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다