oracle database 11g,plsql 编程实战笔记概要1.doc

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

Chap1 DML语句是select 、insert、update、delete和merge DDL语句是create、alter、drop、rename、truncate、comment DCL语句是grant、revoke TCL语句是commit、rollback和savepoint sql16个基本命令——参考书《OCA认证考试指南(IZ0-051)》清华大学出版社 《oracle database sql language reference 11g》有非遵循格式字符串依赖于格式掩码 chap2 2.1.3 关于语句中有多个单引号时处理: 1、 select Its a bird,no plan cant be as pharse from dual; 此处两个单引号即为一个单引号 2、只能用q 再加’(语句)’ select q(Its a bird,no plan cant be) as pharse from dual; 均输出 PHARSE Its a bird,no plan cant be 2.1.4 定义变量与申明变量的区别: 定义变量即为变量分配名称并指定数据类型;申明变量首先需要定义变量,然后为其赋值。(赋值也称为初始化) 替代变量前面要加前缀 且若替代变量为字符型时要加两个单引号 如’a’ declare lv_whom varchar2(20);/*lv-whom为申明变量,a为替代变量,a没有变量类型*/ begin lv_whom := a; end; 或者 declare lv_whom varchar2(20); begin lv_whom := a; end;但是要在输入框中字符加两个单引号 替代变量用define申明,且定义时不可以指定类型,默认为char型 ①Define x=emp; Select * from x; /*调用要用,此处不加单引号,解析后即为emp表*/ ② define x=adasd; select x z from dual;/*此处解析后变为select adasd z from dual ,此处必须要有单引号,使adasd作为直接变量,否则出错*/ 所以替代变量是否加单引号要根据解析的值来确定 注意:避免在声明块中将任何实参赋给局部变量 (constant变量除外),且替代变量与绑定变量都不应该在声明块中赋值 定义为constant的变量,必须在申明块中申明,这意味着常量必须先定义,再给他赋一个不变的值 绑定变量(bind)用var或variable申明 使用冒号(:)作为前缀 var a number begin :a := 22; end; 上面也可以输出结果,下面也可以输出结果,但二者不能同时放一块 print a; /*此处a前面不能加冒号,print可用来输出所有类型的变量*/ 另外也可通过exec直接给绑定变量赋值: SQL var x number /*必须要先定义再赋值,而替代变量定义时不需指定类型,直接赋值即可*/ SQL var y number SQL exec :x :=1;:y :=2;/*exec 等价于begin … end*/ PL/SQL procedure successfully completed x 1 y 2 也可以先定义好绑定变量,再将其赋给其他变量: var a number begin :a := 22; end; 现将其运行再 declare lv_a number; begin lv_a:= :a; dbms_output.put_line(hello,||lv_a||.); end; 结果:hello,22. 将上面的代码放入到d:\q.sql中用@d:\q.sql;调用即可,但是里面的代码要正确 2.1.5命名块 1、过程块 create or replace procedure abc (aa varchar2) is begin dbms_output.put_line(sdhl||aa); end; exec abc(dkjdhhdj); 可能出现 错误一:【ORA-00955: 名称已由现有对象使用】 这个错误说的不仅仅是有可能你有存储过程使用了【】,还有可能是你有表名叫【】或者其他oracle对象叫【】。 说明:其实由于你已经使用了【create or repalace procedure】即使有存储过程叫【】也会被覆盖掉,你用下面的命令查询一下,有什么对象叫【】,删掉它或者换一个存储过程名字。 【SELECT OBJECT_NAME,OBJECT_TYPE FROM USER_OBJECTS W

文档评论(0)

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

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

1亿VIP精品文档

相关文档