1>.NUMBER类型细讲:
Oracle number datatype 语法:NUMBER[(precision [, scale])]
简称:precision --> p
scale --> s
NUMBER(p, s)
范围: 1 <= p <=38, -84 <= s <= 127
保存数据范围:-1.0e-130 <= number value < 1.0e+126
保存在机器内部的范围: 1 ~ 22 bytes
有效为:从左边第一个不为0的数算起的位数。
s的情况:
s > 0
精确到小数点右边s位,并四舍五入。然后检验有效位是否 <= p。
s < 0
精确到小数点左边s位,并四舍五入。然后检验有效位是否 <= p + |s|。
s = 0
此时NUMBER表示整数。
eg:
Actual Data Specified As Stored As
----------------------------------------
123.89 NUMBER 123.89
123.89 NUMBER(3) 124
123.89 ......
Oracle学习笔记一实例
——通过与SqlServer对比学习
Oracle学习笔记一实例
Oracle学习笔记二存储
Oracle学习笔记三方案
实例
在Oracle和SqlServer中都有实例一说,但这两个实例是不同的。
在SqlServer中,实例是SQL服务器引擎。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。在一个实例可以建多个数据库,但不能多个实例使用一个数据库。
在Oracle中,实例是指运行中的数据库实体。一个实例可以用于一个数据库,多个实例也可以同时用于一个数据库,实例和数据库的关系是一对多的关系,不能在一个实例中建多个数据库。
多个“实例”同时驱动一个“数据库”的架构叫“集群(Oracle real application
clusters,简称RAC)”,这是Oracle的一种高端应用,如果结合磁盘阵列的保护机制,RAC能最大限度的保护我们的应用不间断运行,数据不丢失。
......
Oracle学习笔记二存储
——通过与SqlServer对比学习
存储
在SqlServer中,我们可以为一个数据库指定一组文件。数据存储在这些文件中。
在Oracle中,我们先建表空间,然后把数据库对象存放在指定的表空间中。 一个表空间可以包含若干个数据文件,
一个数据文件只能属于一个表空间。一个表只能存放在一个表空间里,但可以存放在这个表空间的多个数据文件中的。
一个表空间只能属于一个数据库。
......
Oracle学习笔记三方案
——通过与SqlServer对比学习
方案(schema)
在Oracle中,我们可以对数据库对象分组,这就是方案(schema),是数据库对象的集合。一个用户一般对应一个schema,该用户的schema名等于用户名,并作为该用户缺省schema。这也就是我们在企业管理器的方案下看到schema名都为数据库用户名的原因。Oracle数据库中不能新创建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决(Oracle中虽然有create schema语句,但是它并不是用来创建一个schema的),在创建一个用户的同时为这个用户创建一个与用户名同名的schem并作为该用户的缺省shcema。即schema的个数同user的个数相同,而且schema名字同user名字一一 对应并且相同,所有我们可以称schema为user的别名,虽然这样说并不准确,但是更容易理解一些。
下面看张复杂的图,表现用户方案,表空间 ,文件之间的关系。
......
1、用来插入大量测试数据的存储过程
CREATE OR REPLACE PROCEDURE INSERTAMOUNTTEST
(
ST_NUM IN NUMBER,
ED_NUM IN NUMBER
)
IS
BEGIN
declare
i number;
begin
FOR i IN ST_NUM..ED_NUM LOOP
INSERT INTO tb values(i,i,'3','3','3',100,'0');
END LOOP;
end;
END;
运行:
sql>execute INSERTAMOUNTTEST(1,45000) -- 一次插入45000条测试数据
2、从存储过程中返回值
create or replace procedure spaddflowdate
(
varAppTypeId in varchar2,
varFlowId in varchar2,
DateLength in number,
ReturnValue   ......
先假设有这么一个表:
create
table
S_Depart (
DepartId
INT
not
null
,
DepartName NVARCHAR2(
40
)
not
null
,
DepartOrder
INT
default
0
,
constraint
PK_S_DEPART
primary
key
......