亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? exam0.c

?? VC+ORACLE的開發(fā)例子。 PRO*C的例子
?? C
字號:

/* Result Sets Interface */
#ifndef SQL_CRSR
#  define SQL_CRSR
  struct sql_cursor
  {
    unsigned int curocn;
    void *ptr1;
    void *ptr2;
    unsigned int magic;
  };
  typedef struct sql_cursor sql_cursor;
  typedef struct sql_cursor SQL_CURSOR;
#endif /* SQL_CRSR */

/* Thread Safety */
typedef void * sql_context;
typedef void * SQL_CONTEXT;

/* Object support */
struct sqltvn
{
  unsigned char *tvnvsn; 
  unsigned short tvnvsnl; 
  unsigned char *tvnnm;
  unsigned short tvnnml; 
  unsigned char *tvnsnm;
  unsigned short tvnsnml;
};
typedef struct sqltvn sqltvn;

struct sqladts
{
  unsigned int adtvsn; 
  unsigned short adtmode; 
  unsigned short adtnum;  
  sqltvn adttvn[1];       
};
typedef struct sqladts sqladts;

static struct sqladts sqladt = {
  1,1,0,
};

/* Binding to PL/SQL Records */
struct sqltdss
{
  unsigned int tdsvsn; 
  unsigned short tdsnum; 
  unsigned char *tdsval[1]; 
};
typedef struct sqltdss sqltdss;
static struct sqltdss sqltds =
{
  1,
  0,
};

/* File name & Package Name */
struct sqlcxp
{
  unsigned short fillen;
           char  filnam[21];
};
static const struct sqlcxp sqlfpn =
{
    20,
    "D:\\procdemo\\exam0.pc"
};


static unsigned int sqlctx = 73268875;


static struct sqlexd {
   unsigned int   sqlvsn;
   unsigned int   arrsiz;
   unsigned int   iters;
   unsigned int   offset;
   unsigned short selerr;
   unsigned short sqlety;
   unsigned int   occurs;
      const short *cud;
   unsigned char  *sqlest;
      const char  *stmt;
   sqladts *sqladtp;
   sqltdss *sqltdsp;
            void  **sqphsv;
   unsigned int   *sqphsl;
            int   *sqphss;
            void  **sqpind;
            int   *sqpins;
   unsigned int   *sqparm;
   unsigned int   **sqparc;
   unsigned short  *sqpadto;
   unsigned short  *sqptdso;
   unsigned int   sqlcmax;
   unsigned int   sqlcmin;
   unsigned int   sqlcincr;
   unsigned int   sqlctimeout;
   unsigned int   sqlcnowait;
              int   sqfoff;
   unsigned int   sqcmod;
   unsigned int   sqfmod;
            void  *sqhstv[4];
   unsigned int   sqhstl[4];
            int   sqhsts[4];
            void  *sqindv[4];
            int   sqinds[4];
   unsigned int   sqharm[4];
   unsigned int   *sqharc[4];
   unsigned short  sqadto[4];
   unsigned short  sqtdso[4];
} sqlstm = {12,4};

/* SQLLIB Prototypes */
extern void sqlcxt (void **, unsigned int *,
                    struct sqlexd *, const struct sqlcxp *);
extern void sqlcx2t(void **, unsigned int *,
                    struct sqlexd *, const struct sqlcxp *);
extern void sqlbuft(void **, char *);
extern void sqlgs2t(void **, char *);
extern void sqlorat(void **, unsigned int *, void *);

/* Forms Interface */
static const int IAPSUCC = 0;
static const int IAPFAIL = 1403;
static const int IAPFTL  = 535;
extern void sqliem(char *, int *);

typedef struct { unsigned short len; unsigned char arr[1]; } VARCHAR;
typedef struct { unsigned short len; unsigned char arr[1]; } varchar;

/* cud (compilation unit data) array */
static const short sqlcud0[] =
{12,4130,852,0,0,
5,0,0,1,0,0,27,36,0,0,4,4,0,1,0,1,9,0,0,1,10,0,0,1,10,0,0,1,10,0,0,
36,0,0,2,0,0,32,49,0,0,0,0,0,1,0,
51,0,0,3,0,0,30,55,0,0,0,0,0,1,0,
66,0,0,4,66,0,4,72,0,0,3,1,0,1,0,2,97,0,0,2,4,0,0,1,97,0,0,
93,0,0,5,0,0,32,100,0,0,0,0,0,1,0,
};


/* exam01.pc a·¢Oracleóú3ìDòùày */
/* μ÷£o±3ìDòééüóPROCa·¢Oracleaóúμ±à3ììμ£í¨1yòAUTHS
* ±íêè×÷ò′ú£2éˉ×÷òD°1¤×ê£DD°ó|¨±í¢2èêyY2¢ìá£*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
/* °üoSQLí¨£üóóú′|àí′íó£*/
#include <sqlca.h>
void connect(); /* áóμOracle Server */
void disconnect(); /* aμOracle Serverμáó */
void sql_error(char *); /* ′|àí′íó±ú */
void select(); /* 2éˉ×ó3ìDò */
extern sqlglm(char *,int *,int *);
/* ÷3ìDò */
void main()
{
/* °2×°′íó′|àí±ú */
/* EXEC SQL WHENEVER SQLERROR DO sql_error("Oracle′íó--\n"); */ 

/* áóμêyYa */
connect();
/* ′DD2éˉ */
select();
/* aêyYaáó */
disconnect();
}
/* ×ó3ìDò */
/* áó×ó3ìDò connect() */
void connect()
{
/* EXEC SQL BEGIN DECLARE SECTION; */ 

/* VARCHAR username[20], password[10], server[10]; */ 
struct { unsigned short len; unsigned char arr[20]; } username;

struct { unsigned short len; unsigned char arr[10]; } password;

struct { unsigned short len; unsigned char arr[10]; } server;

/* EXEC SQL END DECLARE SECTION; */ 


strcpy (username.arr,"dbcrm/dbcrmsd@crmdb");
/*EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;*/
/* EXEC SQL connect :username; */ 

{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 12;
sqlstm.arrsiz = 4;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int  )10;
sqlstm.offset = (unsigned int  )5;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char  *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int  )0;
sqlstm.sqhstv[0] = (         void  *)&username;
sqlstm.sqhstl[0] = (unsigned int  )22;
sqlstm.sqhsts[0] = (         int  )22;
sqlstm.sqindv[0] = (         void  *)0;
sqlstm.sqinds[0] = (         int  )0;
sqlstm.sqharm[0] = (unsigned int  )0;
sqlstm.sqadto[0] = (unsigned short )0;
sqlstm.sqtdso[0] = (unsigned short )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqphss = sqlstm.sqhsts;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqpins = sqlstm.sqinds;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlstm.sqpadto = sqlstm.sqadto;
sqlstm.sqptdso = sqlstm.sqtdso;
sqlstm.sqlcmax = (unsigned int )100;
sqlstm.sqlcmin = (unsigned int )2;
sqlstm.sqlcincr = (unsigned int )1;
sqlstm.sqlctimeout = (unsigned int )0;
sqlstm.sqlcnowait = (unsigned int )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sql_error("Oracle′íó--\n");
}


printf("\n連接的數(shù)據(jù)庫是%s\n", username.arr);
}
/* aáó×ó3ìDò disconnect() */
void disconnect()
{
char temp;
printf("\n是否在斷開連接前提交所有事務(wù)(Y/N)");
scanf("%c", &temp);
fflush(stdin);
if(temp !='Y' && temp != 'y')
{
/* 回退事務(wù),斷開連接。 */
/* EXEC SQL ROLLBACK WORK RELEASE; */ 

{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 12;
sqlstm.arrsiz = 4;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int  )1;
sqlstm.offset = (unsigned int  )36;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char  *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int  )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sql_error("Oracle′íó--\n");
}


printf("\n 回退事務(wù),斷開連接。\n\n");
}
else
{
/* 提交事務(wù),斷開連接。 */
/* EXEC SQL COMMIT WORK RELEASE; */ 

{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 12;
sqlstm.arrsiz = 4;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int  )1;
sqlstm.offset = (unsigned int  )51;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char  *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int  )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sql_error("Oracle′íó--\n");
}


printf("\n提交事務(wù),斷開連接。\n\n");
exit(1);
}
}
/* 查詢子程序 select()
* 首先輸入作家代碼,然后查詢作家姓名和工資。*/
void select()
{
/* EXEC SQL BEGIN DECLARE SECTION; */ 

char author_code[8], name[10];
float salary;
short salary_ind;
/* EXEC SQL END DECLARE SECTION; */ 

printf("\n輸入作家代碼: ");
gets(author_code);
/* 查詢作家姓名和工資 */
/* EXEC SQL SELECT name, salary INTO :name,:salary 
FROM auths
WHERE author_code = :author_code; */ 

{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 12;
sqlstm.arrsiz = 4;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.stmt = "select name ,salary into :b0,:b1  from auths where author_co\
de=:b2";
sqlstm.iters = (unsigned int  )1;
sqlstm.offset = (unsigned int  )66;
sqlstm.selerr = (unsigned short)1;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char  *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int  )0;
sqlstm.sqhstv[0] = (         void  *)name;
sqlstm.sqhstl[0] = (unsigned int  )10;
sqlstm.sqhsts[0] = (         int  )0;
sqlstm.sqindv[0] = (         void  *)0;
sqlstm.sqinds[0] = (         int  )0;
sqlstm.sqharm[0] = (unsigned int  )0;
sqlstm.sqadto[0] = (unsigned short )0;
sqlstm.sqtdso[0] = (unsigned short )0;
sqlstm.sqhstv[1] = (         void  *)&salary;
sqlstm.sqhstl[1] = (unsigned int  )sizeof(float);
sqlstm.sqhsts[1] = (         int  )0;
sqlstm.sqindv[1] = (         void  *)0;
sqlstm.sqinds[1] = (         int  )0;
sqlstm.sqharm[1] = (unsigned int  )0;
sqlstm.sqadto[1] = (unsigned short )0;
sqlstm.sqtdso[1] = (unsigned short )0;
sqlstm.sqhstv[2] = (         void  *)author_code;
sqlstm.sqhstl[2] = (unsigned int  )8;
sqlstm.sqhsts[2] = (         int  )0;
sqlstm.sqindv[2] = (         void  *)0;
sqlstm.sqinds[2] = (         int  )0;
sqlstm.sqharm[2] = (unsigned int  )0;
sqlstm.sqadto[2] = (unsigned short )0;
sqlstm.sqtdso[2] = (unsigned short )0;
sqlstm.sqphsv = sqlstm.sqhstv;
sqlstm.sqphsl = sqlstm.sqhstl;
sqlstm.sqphss = sqlstm.sqhsts;
sqlstm.sqpind = sqlstm.sqindv;
sqlstm.sqpins = sqlstm.sqinds;
sqlstm.sqparm = sqlstm.sqharm;
sqlstm.sqparc = sqlstm.sqharc;
sqlstm.sqpadto = sqlstm.sqadto;
sqlstm.sqptdso = sqlstm.sqtdso;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
if (sqlca.sqlcode < 0) sql_error("Oracle′íó--\n");
}


/*根據(jù)指示變量的值來確定該作家的工資是否為空。*/
if (salary >0)
{
printf("\n作家代碼\t作家姓名\t作家工資\n");
printf("--------\t--------\t--------\n");
printf("%8s\t%8s\t%8.2f\n", author_code, name, salary);
}
else
{
printf("作家%s的工資未錄入,為空值!\n", name);
}
}
/* 錯誤處理子程序 sql_error() */
void sql_error(char *msg)
{
char err_msg[128];
size_t buf_len, msg_len;
/* 出現(xiàn)SQL錯誤,繼續(xù)往下執(zhí)行。 */
/* EXEC SQL WHENEVER SQLERROR CONTINUE; */ 

printf("\n%s\n", msg);
buf_len=sizeof(err_msg);
/* 調(diào)用函數(shù)sqlglm()獲得錯誤消息。 */
sqlglm(err_msg, &buf_len, &msg_len);
printf("%.*s\n", msg_len, err_msg);
/* 回退事務(wù),斷開連接,退出程序。 */
/* EXEC SQL ROLLBACK RELEASE; */ 

{
struct sqlexd sqlstm;
sqlstm.sqlvsn = 12;
sqlstm.arrsiz = 4;
sqlstm.sqladtp = &sqladt;
sqlstm.sqltdsp = &sqltds;
sqlstm.iters = (unsigned int  )1;
sqlstm.offset = (unsigned int  )93;
sqlstm.cud = sqlcud0;
sqlstm.sqlest = (unsigned char  *)&sqlca;
sqlstm.sqlety = (unsigned short)256;
sqlstm.occurs = (unsigned int  )0;
sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


exit(EXIT_FAILURE);
}
/*建表語句
DROP TABLE auths CASCADE CONSTRAINTS
/
CREATE TABLE auths(
AUTHOR_CODE VARCHAR2(8) NOT NULL,
NAME VARCHAR2(10),
BIRTHDATE DATE,
ENTRY_DATE_TIME DATE,
SALARY NUMBER(7,2),
remark VARCHAR2(255))
/
REM 下一行為在PL/SQL環(huán)境中運行建表文件的命令
REM @ E: \ PROCW \ Exam01 \ auths.sql
REM 下一行為在PL/SQL環(huán)境中向auths表插入數(shù)據(jù)的命令,插入后應(yīng)提交(COMMIT)!
REM INSERT INTO auths(author_code,name,salary) VALUES('A00001','王達琳',1200);

*/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av中文字幕在线不卡| 成人精品国产一区二区4080| 欧美日韩视频在线第一区 | 狠狠狠色丁香婷婷综合久久五月| 欧美xfplay| 日本高清视频一区二区| 国产在线精品免费av| 亚洲一区二区三区美女| 欧美国产欧美亚州国产日韩mv天天看完整| 91视频观看视频| 国模一区二区三区白浆| 国产传媒日韩欧美成人| 喷水一区二区三区| 亚洲一区在线免费观看| 日韩不卡一二三区| 午夜婷婷国产麻豆精品| 亚洲天堂网中文字| 欧美激情在线看| 亚洲美女区一区| 中文字幕一区不卡| 国产日韩欧美麻豆| 久久午夜色播影院免费高清| 在线播放日韩导航| 欧美性一区二区| 91欧美激情一区二区三区成人| 色菇凉天天综合网| 日韩女优视频免费观看| 欧美日韩国产精品自在自线| 91美女在线看| 日韩一区二区三区免费看 | 555夜色666亚洲国产免| 在线免费亚洲电影| 91在线porny国产在线看| 欧美日韩在线一区二区| 精品sm在线观看| 精品免费日韩av| 亚洲丝袜精品丝袜在线| 秋霞成人午夜伦在线观看| 不卡视频一二三四| 日韩女优电影在线观看| 一区二区三区久久| 亚洲成人黄色影院| 日韩av电影免费观看高清完整版在线观看| 国产一区二区三区免费观看| 色综合久久66| 欧美精选一区二区| ...xxx性欧美| 国产精品一级在线| 国产高清成人在线| 欧美一区永久视频免费观看| 欧美成人精品高清在线播放| 亚洲最大的成人av| 成人avav影音| 久久精品欧美一区二区三区麻豆| 欧美国产精品一区二区| 毛片不卡一区二区| 国产精品一区二区无线| 欧美一级片免费看| 亚洲成人7777| 欧美日韩精品一区二区| 日韩美女啊v在线免费观看| 久久99国产精品久久99果冻传媒| 国产精品一区二区在线观看不卡| 91精品国产91久久久久久一区二区 | 日韩欧美一二三区| 性感美女极品91精品| 91精品91久久久中77777| 日本一区二区三区高清不卡| 久久成人18免费观看| 福利电影一区二区| 欧美日本一区二区在线观看| 亚洲视频香蕉人妖| 色噜噜狠狠成人网p站| 1000部国产精品成人观看| www.久久精品| 亚洲视频免费在线观看| 一本一本大道香蕉久在线精品| 国产精品传媒入口麻豆| 青青草91视频| 日韩精品一区二区三区视频播放| 性感美女久久精品| 欧美va亚洲va在线观看蝴蝶网| 视频在线观看一区| 91黄色小视频| 亚洲第一在线综合网站| 日韩一级片在线观看| 开心九九激情九九欧美日韩精美视频电影 | 国产精品亚洲成人| 国产精品久久久久久久久免费樱桃 | 菠萝蜜视频在线观看一区| 国产精品久久久久久久久免费桃花| www.日韩在线| 亚洲影视在线观看| 欧美大片国产精品| 成人免费av资源| 精品av久久707| 成年人国产精品| 亚洲国产美国国产综合一区二区| av一区二区三区四区| 一区二区三区 在线观看视频| 在线成人av影院| 成人永久免费视频| 一区二区三区在线视频播放| 欧美一区二区三区四区高清| 国产福利91精品一区二区三区| 亚洲色图都市小说| 日韩精品专区在线影院观看| 成人av电影在线播放| 日韩精品一二三四| 国产精品久久99| 51久久夜色精品国产麻豆| 成人午夜精品在线| 视频一区视频二区中文| 日本一区二区三区电影| 69堂国产成人免费视频| 菠萝蜜视频在线观看一区| 蜜桃视频一区二区| 亚洲另类中文字| 欧美日韩中字一区| 国产盗摄一区二区三区| 天堂蜜桃91精品| 国产精品久久久久一区| 精品国一区二区三区| 欧美怡红院视频| 丁香五精品蜜臀久久久久99网站| 午夜精品福利久久久| 日韩一区欧美一区| 久久久精品国产99久久精品芒果| 国产精品系列在线观看| 五月激情丁香一区二区三区| 综合久久久久久| 国产日韩成人精品| 欧美成人女星排名| 91精品国产高清一区二区三区 | 麻豆精品一区二区| 亚洲老妇xxxxxx| 国产精品不卡在线| 久久免费偷拍视频| 久久伊99综合婷婷久久伊| 3751色影院一区二区三区| 91久久久免费一区二区| caoporm超碰国产精品| 国产成人免费视频一区| 国产在线一区观看| 国产自产2019最新不卡| 久久99国产精品免费网站| 久热成人在线视频| 久久99国产精品麻豆| 久久se这里有精品| 激情综合网天天干| 久久99国内精品| 国产美女在线精品| 粉嫩高潮美女一区二区三区| 国产成人综合视频| 懂色av一区二区夜夜嗨| av午夜精品一区二区三区| 北条麻妃国产九九精品视频| www.一区二区| 色偷偷久久一区二区三区| 欧洲亚洲国产日韩| 欧美美女黄视频| 欧美一区二区在线不卡| 精品捆绑美女sm三区| 久久久久久**毛片大全| 中文字幕精品—区二区四季| 亚洲欧美激情小说另类| 亚洲伊人色欲综合网| 青青青爽久久午夜综合久久午夜| 九色综合狠狠综合久久| 成人禁用看黄a在线| 日本大香伊一区二区三区| 91精品国产综合久久精品app | 欧美日韩亚洲综合一区二区三区| 欧美午夜精品久久久久久孕妇| 欧美福利电影网| 久久婷婷国产综合精品青草| 中文乱码免费一区二区| 欧美本精品男人aⅴ天堂| 欧美国产成人在线| 亚洲一区二区三区在线| 国产另类ts人妖一区二区| 99久久精品情趣| 99久久久精品免费观看国产蜜| 在线观看91视频| 国产亚洲精品aa| 亚洲一区电影777| 国产一区二区按摩在线观看| 99re成人精品视频| 日韩午夜在线观看视频| 国产精品久久久久久久久免费桃花| 亚洲五码中文字幕| 国产精品一区二区你懂的| 欧美日韩亚洲综合一区二区三区 | 在线视频欧美精品| 久久夜色精品国产欧美乱极品| 亚洲在线免费播放| 懂色av噜噜一区二区三区av| 欧美一区二区日韩| 亚洲欧美aⅴ...| 国产高清无密码一区二区三区|