今天遇到一个问题:
在insert into select后面用序列时报错
insert into R_POL_VIPO(id,SUMVIPONUM,STATSTICSDATE)
select R_POL_VIPO_seq.Nextval,VIPONUM,sysdate
from R_POL_VIPO
where YEAR=substr(v_date,0,4) and MONTH=substr(v_date,5);
ORA-02287:此处序号不许使用
将其改成如下形式编译就通过了:
insert into R_POL_VIPO(id,SUMVIPONUM,STATSTICSDATE)
select R_POL_VIPO_seq.Nextval,b.*
from (select VIPONUM,sysdate
 ..
今天遇到一个很奇怪的问题,有两个用户hbibillms和hbibilldata,都是dba角色权限,我现在在hbibillms用户下建立了一个存储过程,访问到hbibilldata用户下的表:
create or replace procedure test2 is
begin
--p_feetraderecord
insert into hbibilldata.feetraderecordhistory
select *
from hbibilldata.feetraderecord
where TO_CHAR(lastmodifytime, 'yyyy-mm-dd') <=
to_..
在使用RMAN从AUTOBACKUP中恢复SPFILE,可能会碰到这个错误,这里简单总结一下。在RMAN恢复SPFILE过程中,可能遇到下面的错误:
RMAN> restore spfile from autobackup;
Starting restore at 27-6月 -07
using target database controlfile instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=9 devtype=DISK
channel ORA_DISK_1: looking for autobackup on day: 20070627
channel ORA_DISK_1: looking for autobackup on day: 20070626
channel..
1、准备待搬移的表空间TEST
(以下操作SID=ORCL10库上执行)源库
创建表空间TEST:
SQL> create tablespace test
2 datafile 'D:\oracle\product\10.1.0\oradata\orcl10\test01.dbf' size 50m;
Tablespace created
创建用户zy:
SQL> create user zy //记住此用户,后面导入impdp要用到
2 identified by zouyang
3 default tablespace test;
User created
为用户赋权:
SQL> grant dba to zy;
Grant succeeded
..
我想建立一个RMAN备份机制,本机为目标数据库,sid为orcl10的数据库为恢复目录来做备份,但总不成功,以下是我的执行步骤:
SQL> conn sys/e2000jl@orcl10 as sysdba
Connected.
SQL> create user rman
2 identified by rman123;
&n..
在上面屏蔽掉一个列中显示的相同的值的显示中,每当列值变化时在值变化之前插入n个空行。
语法:BREAK ON break_column SKIP n
SQL> break on deptno skip 1
SQL> select deptno,ename,sal
2 from emp
3 order by deptno,sal desc;
DEPTNO ENAME SAL
---------- ----------- ---------
..
我有一张表T,表的内容如下:
c1 c2 c3
--------------------
1 a cd
1 c we
1 c ilj
2 d hn
2 d &nb..
今天想学着别人做联机备份表空间,看起来也就那么两句命令嘛,居然还是躲不过问题来袭,唉,悲哀~~~
1. 联机备份出错:
SQL> alter tablespace zy begin backup;
alter tablespace users begin backup
*
ERROR at line 1:
ORA-01123:cannot start online backup;media recovery not enabled
2. 查找错误原因:
在noarchive模式下不能做alter tablespace XXX begin backup,联机备份只有在数据库位于archivelog模式中才能..
今天创建了一个用户zy,给用户赋予了create table的权限,可还是不能建表。
1、创建用户语句:
Create user zy
Identified by zy123
Default tablespace zy;
2、Zy用户所拥有的系统权限:
SQL> select * from user_sys_privs;
USERNAME PRIVILEGE ADMIN_OPTION
---------------- -------------------------------- --------------
ZY CREATE TABLE &..
用expdp或impdp命令时, 可暂不指出用户名/密码@实例名 as 身份, 然后根据提示再输入, 如:
host expdp schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
一. 创建逻辑目录, 该命令不会在操作系统创建真正的目录. 最好以system等管理员创建.
create directory dpdata1 as 'd:\test\dump';
二. 查看管理理员目录(同时查看操作系统是否存在, 因为Oracle并不关心该目录是否存在, 如果不存在, 则出错.)
select * from..
变长数组:是一个存储有序元素的集合,每个元素都有一个索引,该索引相对应元素在数组中的位置。变长数组存在大小的限制,但是可以动态进行更改。
创建变长数组语句:
Create Type varray_phone as varray(3) of varchar2(50);
接下来应用这个变长数组,先创建一个人员表,人员表中拥有一列电话,类型是变长数组,意思是这个人,可能有一个电话号码,也可能有2个,最多3个。
create table person3
(
id integer constraint person3_p..
在我们传统的印象中,索引和表是两个不同的东西。我们总是先创建表,然后
根据查询,建立相应的索引。表和索引在物理上属于不同的存储空间。
例如你建立了一个好友的通讯录,你经常需要通过指定好友的姓名来查询他的
有关信息,为了提高查询的性能(假设你的好友多如牛毛),你可能希望在他们的
姓名上建立一个索引,这是一种非常自然的想法。
可是,也许有一天你发现,除了上述的这种查询之外,你几乎从不做其他的查
询。你有没有想过,..
Oracle中start with…connect by prior子句用法
connect by 是结构化查询中用到的,其基本语法是:
select … from tablename
start with 条件1
connect by 条件2
where 条件3;
例:
select * from table
start with org_id = ‘HBHqfWGWPy’
connect by prior org_id = parent_id;
简单说来是将一个树状结构存储在一张表里,比如一个表中存在两个字段:
org_id,parent_id那么通过表示每一条记录的parent是谁,就可以形成一个树状结构。
 ..
问题描述:
先使用root用户创建了一个用户:
useradd -u 600 -g oinstall -G dba -d /opt/oracle oracle
然后我给用户添加了密码:
passwd oracle
接着便重启动系统,准备以oracle用户登录,输入了oracle用户名和密码以后就跳出这样的报错:
User's $HOME/.dmrc file is being ignored.This prevents the default session and language from being saved .File should be owned by user and have 644 permissions.User's $HOME dire..
一、Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:
[root@laolinux root]#logout
Red Hat Linux release 9 (Shike)
Kernel 2.4.20.8 on an i686
laolinux Login: ← 回到登陆的画面
二、关机或重新启动的shutdown命令
shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。参数说明如下:
1. 立即关机:-h 参数让系统立即关机。范例如下:
[root@laolinux root]#shutdown –h now ← 要求系统立即关机
 ..
今天打开数据库居然无法连接了,不论用操作系统方式登录,还是用用户名密码的方式登录都会报错ORA-12638
SQL> conn / as sysdba
ERROR:
ORA-12638: Credential retrieval failed
SQL> conn scott/tiger
ERROR:
ORA-12638: Credential retrieval failed
在晚上搜索了一下,说是要修改sqlnet.ora文件(位置:$ORACLE_HOME/NETWORK/ADMIN/SQLNET.ORA):
将SQLNET..
1、前言
目前所有使用Oracle作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。当然在Oracle中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一张或者某几张表关联之后得到的结果集非常小并且查询得到这个结果集的速度非常快,那么这个时候我考虑在Oracle中创建“临时表”。
我对临时表的理解:在Oracle中创建一..
1.undo_retention值越大,需要的undo表空间越大
undo_retention值表示一个undo数据块最久能在undo表空间中停留的时间,单位是秒,缺省值为900。(问:如果已经超过了这个时间,而事务还么有提交,此时该undo数据块可以被覆盖吗?)
undo表空间资源是循环使用的,在undo_retention时间内,undo数据块的内容是不会被释放掉,也即不会被新的undo数据覆盖。所以设置停留时间越久,undo表空间就越大。
2.工作量很大,业务量大..
编译以下语句出错:
select s.segment_name,s.segment_type,s.tablespace_name,s.next_extent
from dba_segments s
where not exists (select 1
from dba_free_space f
&nb..
1.V$LOGFILE.STATUS
([url]http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_1152.htm#sthref3730[/url])
类型:VARCHAR2(7)
Status of the log member:
(1).INVALID - File is inaccessible(文件不可访问);
(2).STALE - File's contents are incomplete(表明该文件内容不完全,例如正在添加一个日志文件成员)
If the redo log file group member has never been used, either due to a new ..