服务器无法开机保存oracle数据的方法:
创新互联专注于成都做网站、网站制作、成都外贸网站建设、网页设计、网站制作、网站开发。公司秉持“客户至上,用心服务”的宗旨,从客户的利益和观点出发,让客户在网络营销中找到自己的驻足之地。尊重和关怀每一位客户,用严谨的态度对待客户,用专业的服务创造价值,成为客户值得信赖的朋友,为客户解除后顾之忧。
1、如果SQLdevelop可以连接数据库,从新开一个账号,分配表空间,进行数据库复制,这是最简单的方法。
2、如不能链接数据库,可使用PLSQL进行远程登录oracle进行数据库备份。
利用逻辑数据库 和物理数据库 来存储 其中 逻辑数据库主要包括表 ,段,区,oracle数据块。物理数据块 包括 数据文件,联机重做日志文件等
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表示整数。
从而,Oracle可以存储、可以运算的最大整数是 1e126 -1 。
declare
n number:=0;
begin
for i in REVERSE 1..125 loop
n := n + 9*power(10,i);
dbms_output.put_line(i || '--' || n);
end loop;
insert into tt(id)values(n);
commit;
end;
/
经实际验证,的确可以存放1e126-1,但无法查看,也无法参与运算。
这个问题可深可浅。
简单的说就是用表存储数据的。
往深里说,参考《关系数据库理论及应用》
sqlplus 中直接敲入存储过程代码(create or replace procedure ...), / 结束,\x0d\x0a如果代码没有错误,该过程就被保存到数据库中。 \x0d\x0a可以用 exec 过程名 运行。\x0d\x0a\x0d\x0a如果是plsql developer之类的工具,那更简单,编辑完存储过程后,有运行按钮,点击即可。
如果必须存储在数据库,转成clob,blob存。不过最好是搞个专门的文件存储服务器存储,数据库只存路径位置就好。