北大青鸟oracle学习笔记12
关系型数据库理论中字段值必须是单值,而oracle中允许在一个字段中存储一个表的内容。
如:员工表中的外键 部门编号,oracle中这个字段可以存放部门的记录而并不是一个外键,这样查询时候的效率会提高。
可变数组:
创建带有可变数组的表
创建可变数组基类型
create or replace type 基类型名 as object(字段清单);
创建可变数组类型
create or replace 可变数组类型名 as varray(最大行数) of 可变数组的基类型;
实例:
create or replace type mingxitype as object
(
goodsid varchar(15),
incount int,
providerid varchar(10)
);
create or replace type arrmingxitype as varray(100) of mingxitype;
创建一个主表
create table instock
(
orderid int primary key,
indate date,
mingxi arrmingxitype
);
利用构造函数插入数据
insert into instock values(
'200208070001',
to_date('2002-08-07','yyyy-mm-dd'),
arrmingxitype(
mingxitype('101',10,'S01'),
mingxitype('102',20,'S02')
)
);
查询
select * from instock;则显示对象而并不是像关系数据库那样的表单
select * from table(
select s.mingxi from instock s where orderid = 1001
);
此时显示的是可变数组中的信息而没有主表中的信息。
table函数要求内部子查询必须明确确定一条记录!
修改可变数组比较麻烦,必须修改整个数组的记录。所以可变数组常使用在基本不需要修改的记录(如历史记录等)
update instock set mingxi = arrmingxitype(
mingxitype('101',20,'S01'),
mingxitype('102',30,'S02')
)where orderid = '200208070001';
删除记录操作与关系型数据库一致,删除整条主记录。
delete from instock where orderid = '1001';
相关文档:
1.选择您所安装Orcale的目录,例如:C:\Oracle
2.右键点击,弹出“属性”对话框,选择“安全”选项卡
3.添加“IUser_机子名称”用户的权限,采用完全控制的方式
4.确定应用后,在选择“安全”选项卡中选择“IUser_机子名称”用户,点击高级
5.选择选择框“用在 ......
sql plus 保存sql语句
save 'd:\sql.txt';将oracle缓存区中的sql语句存入文件。
get 'd:\sql.txt';此时sql语句被加载到oracle缓存区,使用run;命令执行sql语句。
@'d:\sql.txt';加载sql语句并直接执行。
oracle中的函数
1. 转换函数
TO_CHAR(number[,format])
将一个数值转换成与之等价的字符串.如果不指 ......
1.2.1 Oracle与AIX的角色
Oracle运行在AIX上,提供着数据的存储和管理服务。数据即信息,Oracle数据库就是应用系统中存储数据信息的一个集中存储位置、一种存取方法的商品化实现。AIX是承载Oracle运行的底层平台,进行着CPU调度、内存调度、存储管理、文件管理、网络驱动等系统运行和维护工作。
作为对应用系统的支 ......
我是个新手,所以有些说的可能会不好,希望阅读这文章的人见谅啊.
一般关于ID自增的网上都有了很多了,呵呵^那我就简单的说一下: 先创建表,再创建序列:
create sequence 序列名
&nb ......
----------------------------------------------------------------------------
相关知识:Oracle SYNONYM(同义词)
----------------------------------------------------------------------------
是一种映射关系,可以理解为表的一种固定别名
同义词的好处:建立一个同义词可以排除一个对象名字的限制
如果你的 ......