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
운영게시판
최근게시물
MySQL Tutorials 23531 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 23531
SAPDB Precompiler를 이용한 간단한 사용자 관리 예제 프로그램
작성자
남녀평등(linux199)
작성일
2002-12-04 08:33:46
조회수
10,202
첨부파일: user.tar.gz (1,322bytes)

SAPDB와 Precompiler를 이용해서 간단한 사용자 관리 프로그램을 만들어 보도록 하자

이해하기 쉽도록 가장 기본적인 문법만 사용해서 작성이 되었다.

 

우선 첨부된 파일의 user.sql 문을 실행시켜 테이블을 만든후

Makefile의 설치 디렉토리와 user.cpc 파일의 DB 접속 관련 내용을 수정한다

그후 make 로 실행파일을 만들어 낸후 실행하면 OK

 

프로그램내의 주석은 적지 않았다.

중요한 내용은 아래에서 설명하겠다.

 

 

exec sql set serverdb 'TST' on 'localhost';

 

위의 문장은 DB에 접속하기 위한 서버와 DB명을 설정하는 명령이다.

위의 'TST'는 접속할 DB 명이고 'localhost'는 접속할 서버명이다

 

exec sql connect test identified by test;

 

위의 문장은 해당 서버에 실제로 세션을 생성해 내는 일을 한다

앞의 test는 사용자명이고 뒤의 test는 패스워드 이다.

 

exec sql commit release;

 

위의 문장은 접속된 세션을 연결해제 하는 것이다.

 

나머지 문장들은 직접 보면 실행시켜 보면 거의 바로 알 수 있을 정도로 직관적으로 되어있다

 

exec sql ....

형식으로 되어 있는 문장들은 모두 뒤의 명령어를 실행시킨다는 의미이다

값을 하나 넣고 싶으면

 

exec sql insert into user_tb (name) values ('테스트');

 

위와 같은 문장으로 바로 DB에 데이터를 추가할 수 있다

delete나 update도 마찬가지로 사용하면 된다

 

select의 경우는 아래와 같이 우선 select 명령을 준후

 

exec sql select id, name from user_tb;

 

fetch 명령으로 값을 읽어온다

 

exec sql fetch into :id, :name;

 

위에서 사용한 :id, :name 등은 위의 명령 실행전에 아래와 같이 선언이 되어 있어야 한다

 

exec sql begin declare section;

int id;

char name[40];

exec sql end declare section;

 

exec sql begin declare section 와 exec sql end declare section 명령 사이에 있는 변수들은 모두 쿼리에 사용되거나 혹은

쿼리 결과값을 읽어오는데 사용되어 질 수 있다.

 

 

이제 exec sql 명령이 아니 문장 중간 중간에 아래와 같은 코드가 나온다

 

if (sqlca.sqlcode != 0)

printf("(%d) %s\n", sqlca.sqlcode, sqlca.sqlerrmc);

 

 

sqlca 변수는 제공되는 변수로써 sqlca.sqlcode에는 현재의 상황 및 에러내역등이 담긴다.

0 일 경우는 아무 문제가 없는 것이다.

더 이상 읽을 ROW 가 없다거나 삭제한 데이터가 없다거나 할 경우 0이 아닌 다른 값으로 세팅이 된다.

각 값의 내역은 메뉴얼에 자세히 기록되어 있다.

sqlca.sqlerrmc는 에러 메세지가 들어가있다.

 

 

위의 설명한 내용들은 예제 코드를 보면 훨씬 쉽게 이해할 수가 있을 것이다.

[Top]
No.
제목
작성자
작성일
조회
23534SAP DB용 Python Client
남녀평등
2002-12-04
11195
23533SAPDB + JSP(PHP)를 이용한 간단한 페이징 팁
신정호
2002-12-04
15027
23532SAPDB PYTHON에서 SAPDBAPI를 이용한 접속
남녀평등
2002-12-04
11043
23531SAPDB Precompiler를 이용한 간단한 사용자 관리 예제 프로그램
남녀평등
2002-12-04
10202
23530SAPDB PYTHON Interface 사용기
남녀평등
2002-12-04
8154
23529SAPDB ODBC 사용기
남녀평등
2002-12-04
9527
23528SAPDB Precompiler 사용기
남녀평등
2002-12-04
7165
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2017 DSN, All rights reserved.
작업시간: 0.066초, 이곳 서비스는
	PostgreSQL v9.6.3으로 자료를 관리합니다