[计算机软件及应用]PROCC++.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[计算机软件及应用]PROCC

Include 头文件 (c/c++ and pro*c/c++) 定义变量 定义函数 main 连结数据库: connect SQL 操作语句: EXEC SQL …….; exception handler 断开连结: EXEC SQL COMMIT / ROLLBACK WORK release % vi a_1.c a_2.c % gcc –c a_1.c a_2.c % gcc -oa a_1.o a_2.o 完成Pro*C源程序到纯C源程序的转换 基本命令格式 PROC INAME=filename [OptionName1=value1]…[OptionNameN=valueN] Pre-compile: proc myf.pc oname=myf.cpp parse=none code=cpp 2. Compile: g++ -omyfile myfile.cpp –lclntsh 3. Execute: myfile 数据类型 描述 char 单字符 char[n] N个定长字符数组 int 整数 short 短整数 long 长整数 float 单精度浮点数 double 双精度浮点数 VARCHAR[n] 变长字符串 输入 --- 将应用程序的数据传递到数据库中。 int salary, emp_number; cinsalary; cinemp_number; EXEC SQL update emp set sal=:salary where empno= :emp_number; 输出 --- 将数据库的数据传递到应用程序中。 float v_salary; char v_job; EXEC SQL select sal,job INTO :v_salary, :v_job from emp where empno = 7788; coutv_salaryv_job; 预编译选项 CHAR_MAP CHAR_MAP=CHARZ (默认设置):\0结尾,定长,空格补齐。 CHAR_MAP=CHARF | VARCHAR2:定长,空格补齐。 CHAR_MAP=STRING: \0结尾,变长。 当\0结尾,宿主变量长度要大于实际数据长度。 VARCHAR 1.变长, 不是\0结尾。 2. Struct{ unsigned short len; unsigned char arr[ ] }variable_name; 其申明语法与普通C变量一致,但在CODE=CPP或 MODE=ANSI 时变量必须放在申明区. 可使用pointer 作为宿主变量,使用前分配空间。 在DDL语句中不能用宿主变量。错误例子: char table_name[30]; cintable_name; EXEC SQL DROP TABLE :table_name; 指示变量(indicator variable) 短整型变量,用于处理数据库的NULL值,监督和管理与其相关联的宿主变量。 引用语法: :host_variable INDICATOR :indicator_variable OR :host_variable:indicator_variable 主要用在输出, 即当宿主变量用于接收数据库的返回数据时。 通过在宿主变量后用指示变量, 检测是否返回了NULL。 -1:数据库表列的值为NULL,指示变量相关联的输出宿主变量值不确定 =0:Oracle将数据库表列值原封不动的赋给指示器变量相关联的输出宿主变量 ?0: Oracle将数据库表列值截断后赋给指示器变量相关联的输出宿主变量,指示器变量值为该列值的原始长度 Pro*C只支持一维数组 Pro*C不支持数组指针 Pro*C所支持数组最大维数是32767,超出此限制将报错 示例 EXEC SQL BEGIN DECLARE SECTION; int A[100]; char B[100]; char C[100][15]; EXEC SQL END DECLARE SECTION; 在SQL语句中使用数组变量,只需给出:和变量名称, 不要给下标。 示例 EXEC SQL BEGIN DECLARE SECTION; int emp_number[100]; char emp_name[100][15]; EXEC SQL END DECLARE SECTION; EXEC SQL SELEC

您可能关注的文档

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档