久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Pro*C中怎樣嵌入pl/sql塊

共計(jì) 1634 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。

今天就跟大家聊聊有關(guān) Pro* C 中怎樣嵌入 pl/sql 塊,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

/* 包含 C 頭文件 */
#include stdio.h
#include string.h
#include stdlib.h
/* 包含 SQLCA 頭文件 */
EXEC SQL INCLUDE sqlca;
EXEC SQL INCLUDE sqlda;

int main()
{
  EXEC SQL BEGIN DECLARE SECTION;
  int  money;
  char answerbuff[200];
  int flag;

  char username[10],password[10],server[10];
  EXEC SQL END DECLARE SECTION;

  /*
  * 定義輸入宿主變量: 接收用戶名、口令和網(wǎng)絡(luò)服務(wù)名
  *
  */
  strcpy(username, data_center
  strcpy(password, data_center
  strcpy(server, oradf1 /* 這里填寫的是數(shù)據(jù)庫(kù)的 SID*/

  /* 連接到數(shù)據(jù)庫(kù) */
  EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;
  if (sqlca.sqlcode==0)
  printf(連接成功!/n
  else
  /* 顯示連接錯(cuò)誤消息 */
  printf(%.*s/n , sqlca.sqlerrm.sqlerrml,
  sqlca.sqlerrm.sqlerrmc);
  /* 初始化 */
  money=0;
  flag=0; /* 用天判斷是否找到數(shù)據(jù) */

  /* 執(zhí)行 plsql 塊 */
  EXEC SQL EXECUTE
  BEGIN
  SELECT salary INTO :money FROM plsqltest WHERE name= ht
  :flag:=1;
  EXCEPTION
  WHEN NO_DATA_FOUND THEN
  :answerbuff:= 數(shù)據(jù)沒有找到
  END;
  END-EXEC;

  /* 輸出結(jié)果 */
  if (flag==0)
  printf(%s/n ,answerbuff);
  else
  printf(總工資是:%d/n ,money);

}

=================================================

編譯方法:
1. 如果在 PC 源程序中內(nèi)嵌了 PL/SQL 塊,SQLCHECK 應(yīng)該 SEMANTICS 或是 FULL
2. 當(dāng) SQLCHECK 的值是 SEMANTICS 或是 FULL 時(shí),必須設(shè)置 USERID
proc PARSE=NONE include=-I/opt/oracle/product/10.2.0/precomp/public include=-I/opt/oracle/product/10.2.0/rdbms/public  sqlcheck=fullUSERID=data_center/data_center@oradf1  iname=test.pc oname=test.c

gcc 的一些選項(xiàng),不加這些,有時(shí)會(huì)報(bào)錯(cuò)。
gcc  -L/opt/oracle/product/10.2.0/lib -lclntsh -ldl -lm -lnsl  -o test test.c

===========================================

創(chuàng)建表:
create table PLSQLTEST
(
 salary NUMBER,
 NAME  VARCHAR2(10)
 );

insert into plsqltest (salary, NAME)
  values (1000, xym
insert into plsqltest (salary, NAME)
  values (2000, ht
  commit;

看完上述內(nèi)容,你們對(duì) Pro* C 中怎樣嵌入 pl/sql 塊有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注丸趣 TV 行業(yè)資訊頻道,感謝大家的支持。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-17發(fā)表,共計(jì)1634字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒有評(píng)論)
主站蜘蛛池模板: 井研县| 泰顺县| 光山县| 德保县| 日照市| 衡山县| 达州市| 潍坊市| 平江县| 紫云| 屯门区| 靖边县| 高碑店市| 平顶山市| 湘阴县| 新建县| 崇文区| 富裕县| 麟游县| 龙山县| 平定县| 安龙县| 仙居县| 西昌市| 彰化市| 华坪县| 南京市| 安宁市| 荔浦县| 乐东| 博客| 沭阳县| 靖安县| 登封市| 云南省| 寿光市| 淳化县| 云和县| 新竹市| 宁明县| 蒲江县|