嵌入式编程Proc 思想.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式编程Proc 思想

第一步:理解需求,确定需求思路。 第二步:理解嵌入式编程Pro*c编程,弄清楚什么是Pro*c。 ORACLE支持几种高级语言中内嵌入SQL语句,或ORACLE库函数调用来访问数据库。它们是C,COBOL,Ada,PASCAL,PL/I等,这些语言称之为宿主语言,用它们开发的程序就称为PRO* 程序,如PRO*C,PRO*COBOL等。 PROC在ORACLE的客户端软件中就有,安装oracle时选上即可。 1.什么是Pro*C/C++ 通过在过程化编程语言C/C++中嵌入SQL语句而开发出的应用程序. 2.简要说明:   在通用编程语言中使用的SQL称为嵌入式SQL.目的是Pro*C/C++将使 C/C++成为访问数据库的工具. 在ORACLE数据库管理和系统中, 有三种访问数据库的方法; (1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库; (2)用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*Froms,QL*Reportwriter,SQL*Menu等; (3) 利用在第三代语言内嵌入的SQL语言或ORACLE库函数调用来访问。 Pro*C就属于第三种开发工具之一, 它把过程化语言C和非过程化语言SQL最完善地结合起来,具有完备的过程处理能力,又能完成任何数据库的处理品任务,使用户可以通过编程完成各种类型的报表。 在Pro*C程序中可以嵌入SQL语言,利用这些SQL语言可以完成动态地建立、修改和删除 数据库中的表,也可以查询、插入、修改和删除数据库表中的行, 还可以实现事务的提交和回滚。 在Pro*C程序中还可以嵌入PL/SQL块, 以改进应用程序的性能, 特别是在网络环境下,可以减少网络传输和处理的总开销。 2.Pro*C的程序结构图通俗来说,Pro*C程序实际是内嵌有SQL语句或PL/SQL块的C程序, 因此它的组成很类似C程序 ORACLE 8.16 FOR RHLINUX6.2的PRO*C环境 1、PRO*C: ORACLE数据库作为数据库产品中的佼佼者,应用十分广泛,随着对其应用的深入,使用 ORACLE和C来编制应用系统成为许多系统的选择,而ORACLE和C语言的接口知识成为应该掌握的和十分有用的。 PRO*C是ORACLE的预编译器是一种编程工具,通过它把SQL语句嵌入到C语言程序中。如图: 预编译器把源程序作为输入,然后翻译程序中嵌入的 SQL语句,把它们转化成对标准的ORACLE运行库的调用,最后生成一个修改过的源程序。通过对修改过的源程序进行编译、链接,形成可执行文件。 2、环境配置: A、说明:   ORACLE预编译器在ORACLE 8I安装时是默认或选择安装的,安装了PRO*C,则在$ORACLE_HOME/bin路径下就有了可执行程序PROC,以及相应的未经配置预编译环境。为使PRO*C预编译器能工作我们还必须对环境做一些配置。 ORACLE的PRO*C是对预编译器的选项值的改变来配置环境的。预编译指令基本格式如下: Proc 选项名=选项值 源文件 第三步:Pro*c编程基本可分为如下步骤: 1、首先建立后缀名为.pc的内嵌SQL语句的C源程序文件; $vi foo.pc  2、对源程序stu.pc进行预编译,生成单纯的C源程序foo.c; $proc PARSE=NONE foo.pc 3、编译该C程序,并加入Oracle的客户端动态链接库,生成可执行文件foo; $gcc –o foo foo.c $ORACLE_HOME/lib/libclntsh.so 4、执行并测试foo 文件 (如果测试有问题,则返回到步骤1). 例子程序foo.pc(选取scott.emp表 相关内容,并格式化打印出来): 第四步:根据需求调试程序foo.pc。 #include stdio.h EXEC SQL INCLUDE SQLCA; int main() { printf(start.......... \n ); EXEC SQL BEGIN DECLARE SECTION;//开始声明数据库变量 int empno; char fname[20];  char lname; VARCHAR user[20],pass[20],tnsname[20]; EXEC SQL END DECLARE SECTION;//声明结束 strcpy(user.arr,bill); user.len=(unsigned short)strlen((char *)user.arr); strcpy(pass.arr,billapp); pass.len=(unsigned short)strlen((ch

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档