Oracle

게시글 보기
작성자 유건데이타 등록일 2015-05-27
제목 DYNAMIC SQL METHOD1(CREATE TABLE)
DYNAMIC SQL METHOD1(CREATE TABLE)
=================================

/*******************************************************************
Sample Program : Dynamic SQL Method 1( Create Table)
*******************************************************************/
#include
typedef char asciz[80];
EXEC SQL BEGIN DECLARE SECTION;

EXEC SQL TYPE asciz IS STRING(80) REFERENCE;

VARCHAR username[20];
VARCHAR password[20];
asciz sqlstmt;
asciz tabname;
EXEC SQL END DECLARE SECTION;
EXEC SQL INCLUDE sqlca;

void sqlerror(); /* handles unrecoverable errors */
void connect();
main() {

strcpy(username.arr, "SCOTT"); /* copy the username */
username.len = strlen(username.arr);
strcpy(password.arr, "TIGER"); /* copy the password */
password.len = strlen(password.arr);
EXEC SQL WHENEVER SQLERROR DO sqlerror();
EXEC SQL CONNECT :username IDENTIFIED BY :password;
strcpy(tabname,"TEST_TAB");
strcpy(sqlstmt,"create table ");
strcat(sqlstmt,tabname);
strcat(sqlstmt," (aa number)");
EXEC SQL EXECUTE IMMEDIATE :sqlstmt;
EXEC SQL COMMIT;

EXEC SQL COMMIT WORK RELEASE; /* log off ORACLE */
exit(0);
}

void sqlerror()
{
EXEC SQL WHENEVER SQLERROR CONTINUE;
printf("\nORACLE error detected:\n");
printf("\n% .70s \n", sqlca.sqlerrm.sqlerrmc);
EXEC SQL ROLLBACK RELEASE;
exit(1);
}
Comment
등록된 코멘트가 없습니다.