【数据库设计与开发】数据库应用程序体系结构.pptVIP

【数据库设计与开发】数据库应用程序体系结构.ppt

  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文档。上传文档
查看更多
郭文明 2003.06.05 《电信资源管理系统》立项可行性说明 郭文明 2003.06.05 3. 数据库应用程序体系结构 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、DBA、用户组成。 本章介绍数据库应用程序的数据访问与数据库应用系统的体系结构。 3.1嵌入式SQL 3.2事务处理技术 3.3数据库应用系统体系结构 3.4中间件 3.1 嵌入式SQL 为什么使用嵌入式SQL? —有些数据访问任务对于交互式的非过程的SQL是无法完成的任务。 —使用交互式SQL,必须知道表名、列名并且能够写出符合语法的SQL语句。 —实际的应用系统是非常复杂的,数据库访问只是其中一个部件。有些动作如与用户交互、图形化显示数据等只能用高级语言实现。 嵌入到过程性主语言中使用的SQL称为嵌入式SQL。主语言可以是C或Java(不一定是Windows环境).也可以是Visual Basic, Delphi (Windows环境)等。 ORACLE的Pro*C即是使用嵌入式SQL的平台。 3.1 嵌入式SQL 把SQL嵌入主语言使用时必须解决的三个问题: 1.区分 SQL语句与主语言语句,用EXEC SQL开始. 2.数据库工作单元和程序工作单元之间的通信. SQL语句可以使用主语言的程序变量(简称主变量),这些变量名前加冒号(:)作标志,以区别于字段名。这些变量由BEGIN DECLARE SECTION与END DECLARE SECTION语句之间说明. 主语言中不能引用数据库中的字段变量. SQL语句执行后,系统要反馈给应用程序若干信息,这些信息送到SQL的通信区SQLCA。SQLCA 用语句EXEC SQL INCLUDE加以定义。 3.一个SQL语句原则上可产生或处理一组记录,而主语言一次只能处理一个记录,为此必须协调两种处理方式。这是用游标来解决的。 3.1 嵌入式SQL 嵌入式SQL的执行 3.1.1 C语言中嵌入式SQL #include stdio.h #include “prompt.h” exec sql include sqlca; /*声明通讯区*/ char cid_prompt[]=“请输入顾客号:”; int main( ) { exec sql begin declare section; char cust_id[5],cust_name[14]; float cust_discnt; char user_name[20],user_ped[20]; exec sql end declare section; /*声明变量*/ exec sql whenever sqlerror goto report_error; exec sql whenever not found goto notfound; /*出错处理*/ strcpy(user_name,”mytest”); strcpy(user_pwd,”test”); exec sql connect :user_name identified by :user_pwd; /*连接*/ 3.1.1 C语言中嵌入式SQL 区分SQL语句与C语言语句 嵌入的SQL语句以EXEC SQL开始,以分号(;)结束。 例:exec sql select came,discnt into :cust_name,:cust_discnt from customers where cid=:cust_id; 嵌入SQL语句与C语言之间的数据传递 宿主变量(宿主变量出现于SQL语句中时,前面加(:)以区别列名) C变量既可以用在C语句中,也可用在SQL语句中, 用来在两者之间传递数据。 3.1.1 C语言中嵌入式SQL 宿主变量的声明 在嵌入式SQL语句中使用宿主变量,必须先声明它们:声明为通常的C变量,并将其放在下列标识语句之间, EXEC SQL BEGIN DECLARE SECTION EXEC SQL END DECLARE SECTION 例: exec sql begin declare section; char cust_id[5]=‘c001’; char cust_name[14]; float

文档评论(0)

精品资料 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档