易截截图软件、单文件、免安装、纯绿色、仅160KB

北大青鸟oracle学习笔记32

成员函数和过程
构造函数方法
-oracle的每个对象均有一个内置的构造函数方法
-用于创建对象的一个实例
-无需显式地定义
-与对象类型同名
定义对象类型
create or replace
type persontype as object
(
  id int,
  name varchar(20),
  member function getId return int,
  member procedure setId(pid int),
  member function getName return varchar,
  member procedure setName(pname varchar)
)not final

实现对象成员方法
create or replace type body persontype as
  function getId return int as
  begin
    return id;
  end getId;
 
  procedure setId(pid int) as
  begin
    id := pid;
  end setId;
 
  function getName return varchar as
  begin
    return name;
  end getName;
 
  procedure setName(pname varchar) as
  begin
    name := pname;
  end setName
测试对象
declare
  p personType;
begin
  p:=personType(1,'pf');
  --直接访问对象成员变量
  dbms_output.put_line(p.id||'|'||p.name);
  --使用方法访问成员变量 推荐
  dbms_output.put_line(p.getId()||'|'||p.getName());
  --使用set方法更改对象成员变量值
  p.setId(2);
  p.setName('lmj');
  dbms_output.put_line(p.getId()||'|'||p.getName());
end;
输出:
1|pf
1|pf
2|lmj
很尴尬的发现最后一部视频的后半部分和前半部分是一样的。。。囧。。。嵌套表没有讲。。。
网上搜了一下嵌套表的资料,如下:
一、嵌套表的定义:
嵌套表是表中之表。一个嵌套表是某些行的集合,它在主表中表示为其中的一列。对主表中的每一条记录,嵌套表可以包含多个行。在某种意义上,它是在一个表中存储一对多关系的一种方法。考查一个包含部门信息的表,在任何时间内每个部门会有很多项目正在实施。在一个严格的关系模型中,将需要建立两个独立的表depa


相关文档:

Oracle数据库设计

数据owner和数据操作者以及代码访问使用不同的用户访问,使用授权的方式进行访问。
数据表创建时使用同义词创建
授权时最好不要使用with grant option
以前不太明白同义词的使用,现在知道了。比较好的应用就是创建表的别名
create public 同义词 tableName for owner.tableName
 给视图授权可以使得用户访问不具 ......

Install Oracle 10g on SuSE 10

这次的经历是自己找来的,在安装了10g的那台机上升级下内存也便能忽悠那群友,不过想想还是折腾下吧,给移到配置好点的Server上面,他们用起来顺心,我自己也能折腾点经验。
132的系统是SuSE10.2的,之前已经安装了Oracle 9i,这就意味着必须先卸载掉9i,本以为安装10g的runInstaller能够卸载掉9i,可尝试了好久都是出现ex ......

北大青鸟oracle学习笔记29 30

oracle内置程序包
STANDARD和DBMS_STANDARD 定义和扩展PL/SQL语言环境
DBMS_ALERT 支持数据库事件的异步通知
DBMS_APPLICATION_INFO 允许为跟踪目的而注册应用程序
DBMS_AQ&DBMS_AQADM 管理oracle advanced queuing选件
DBMS_DEFER、DBMS_DEFER_SYS和DBMS_DEFER_QUERY 允许构建和管理延迟的远程过程调用
DBMS_DDL ......

Oracle, DB2 及 MySQL 分页查询写法

 
现在在WEB 应用中使用分页技术越来越普遍了,其中利用数据库查询分页是一种效率比较高的方法,
下面列出了Oracle, DB2  及 MySQL 分页查询写法。
一:Oracle
select * from (select rownum,name from table where rownum <=endIndex )
where rownum > startIndex
二:DB2
DB2分页查询
SELECT * ......

Oracle中connect by...start with...的使用

一、语法
大致写法:select * from some_table [where 条件1] connect by [条件2] start with [条件3];
其中 connect by 与 start with 语句摆放的先后顺序不影响查询的结果,[where 条件1]可以不需要。
[where 条件1]、[条件2]、[条件3]各自作用的范围都不相同:
[where 条件1]是在根据“connect by [条件2] ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号