网站大量收购闲置独家精品文档,联系QQ:2885784924

ORACLE_PLSQL存储过程教程.doc

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

(1)SEQNAME.NEXTVAL里面的值如何读出来?可以直接在insert into test values(SEQNAME.NEXTVAL) 是可以用 这样:   SELECT tmp#_seq.NEXTVAL    INTO id_temp    FROM DUAL; 然后可以用id_temp   (2)PLS-00103: 出现符号 在需要下列之一时:   代码如下:   IF (sum0)    THEN    begin    INSERT INTO emesp.tp_sn_production_log    VALUES (r_serial_number, , id_temp);    EXIT;    end;   一直报sum0 这是个很郁闷的问题 因为变量用了sum 所以不行,后改为i_sum0   (3)oracle 语法   1. Oracle应用编辑方法概览   答:1) Pro*C/C++/... : C语言和数据库打交道的方法,比OCI更常用;    2) ODBC    3) OCI: C语言和数据库打交道的方法,和ProC很相似,更底层,很少用;    4) SQLJ: 很新的一种用Java访问Oracle数据库的方法,会的人不多;    5) JDBC    6) PL/SQL: 存储在数据内运行, 其他方法为在数据库外对数据库访问;   2. PL/SQL   答:1) PL/SQL(Procedual language/SQL)是在标准SQL的基础上增加了过程化处理的语言;    2) Oracle客户端工具访问Oracle服务器的操作语言;    3) Oracle对SQL的扩充;   4. PL/SQL的优缺点   答:优点:    1) 结构化模块化编程,不是面向对象;    2) 良好的可移植性(不管Oracle运行在何种操作系统);    3) 良好的可维护性(编译通过后存储在数据库里);    4) 提升系统性能;    第二章   PL/SQL程序结构   1. PL/SQL块   答:1) 申明部分, DECLARE(不可少);    2) 执行部分, BEGIN...END;    3) 异常处理,EXCEPTION(可以没有);   2. PL/SQL开发环境   答:可以运用任何纯文本的编辑器编辑,例如:VI ;toad很好用   3. PL/SQL字符集   答:PL/SQL对大小写不敏感   4. 标识符命名规则   答:1) 字母开头;    2) 后跟任意的非空格字符、数字、货币符号、下划线、或# ;    3) 最大长度为30个字符(八个字符左右最合适);   5. 变量声明   答:语法    Var_name type [CONSTANT][NOT NULL][:=value];    注:1) 申明时可以有默认值也可以没有;    2) 如有[CONSTANT][NOT NULL], 变量一定要有一个初始值;    3) 赋值语句为“:=”;    4) 变量可以认为是数据库里一个字段;    5) 规定没有初始化的变量为NULL;   第三章   1. 数据类型   答:1) 标量型:数字型、字符型、布尔型、日期型;    2) 组合型:RECORD(常用)、TABLE(常用)、VARRAY(较少用)    3) 参考型:REF CURSOR(游标)、REF object_type    4) LOB(Large Object)   2. %TYPE   答:变量具有与数据库的表中某一字段相同的类型    例:v_FirstName studengts.first_name%TYPE;   3. RECORD类型   答:TYPE record_name IS RECORD( /*其中TYPE,IS,RECORD为关键字,record_name为变量名称*/   field1 type [NOT NULL][:=expr1], /*每个等价的成员间用逗号分隔*/   field2 type [NOT NULL][:=expr2], /*如果一个字段限定NOT NULL,那么它必须拥有一个初始值*/    ... /*所有没有初始化的字段都会初始为NULL   fieldn type [NOT NULL][:=exprn]);   4. %ROWTYPE   答:返回一个基于数据库定义的类型    DECLARE    v_StuRec Student%ROWTYPE; /*Student为表的名字*/    注:与3中定一个record相比,一步就完成,而3中定义分二步:a. 所有的成员变量都要申明; b. 实例化变量;   5. TABL

文档评论(0)

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

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

1亿VIP精品文档

相关文档