oracle如何补表,oracle删除表怎么恢复
oracle数据库 查询一张表,需要查询到150条数据,如果不足150条数据,用空数据补上怎么写sql
select col1,col2,col3 from Table1 where rownum= 150
在盘锦等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站制作、做网站 网站设计制作按需求定制网站,公司网站建设,企业网站建设,品牌网站制作,成都全网营销推广,外贸营销网站建设,盘锦网站建设费用合理。
union all
select null,null,null from Table2 a,(select count(*) count1 from Table1) b
where rownum = case when b.count1 =150 then 0 else 150-count1 end
Table1 为要求查的那个表
Table2 为任意一个行大于150的表
用oracle创建一个表
可用sql语句创建,也可用图形界面创建。
语句创建方法,如创建一个叫test的表,有2个字段,分别是id和name,id为number类型,name为varchar2类型,id是表的主键。
create table test
(id number primary key,
name varchar2(20));
图形界面(使用软件PLSQL)创建,建立内容同上:
1、登录指定用户到指定数据库。
2、在左边列表找到“tables”,然后右键,选择“新建”。
3、选择上方标签“一般”,并在名称处输入表名“test”。
4、然后上边选择“列”标签,下边填写字段名及类型等内容。
5、上方选择“键”标签,然后填写主键名称,并在类型处选择“Primaykey”,然后弹出窗口选择id列,将其添加到右侧。最后点击“确定”按钮。
6、最后可点击右下角的“查看SQL”预览创建语句,最后点击“应用”按钮即可创建成功。
oracle如何备份单表并在新数据库恢复?
冷备份
冷备份数据库是将数据库关闭之后备份所有的关键性文件包括数据文件、控制文件、联机REDO LOG文件,将其拷贝到另外的位置。此外冷备份也可以包含对参数文件和口令文件的备份,但是这两种备份是可以根据需要进行选择的。冷备份实际也是一种物理备份,是一个备份数据库物理文件的过程。因为冷备份要备份除了重做日志以外的所有数据库文件,因此也被成为完全的数据库备份。
过程:
冷备份数据必须是数据库不在open状态下。 以下步骤会给出详细的过程:
◆(1): 关闭DB : shutdown immediate;
◆(2):copy oradata目录下的所有文件, 包括数据文件, 控制文件,redo,等,还需要copy 密码文件 在目录ora92下 的database 中的pwd 文件.全部copy到一个安全目录中。在sql 下可以直接加一个 host 然后使用dos命令。如host copy .............
◆(3):如果是操作系统的重新安装,只要是同样系统,同样数据库版本,是可以做冷备恢复。一下谈的是系统的重新安装后的步骤。
◆(4):正常安装oracle软件,只需要安装软件,可以不用建实例,建实例的时间也比较长,也没有必要。 软件安装好以后,开始准备恢复。
◆(5):数据覆盖过去包括pwd文件,放在原来的目录,如果目录有所改变则需要另外建立控制文件,修改pfile。
◆(6):建立服务:使用oradim 命令 cmd下 oradim -new -sid erp 表示建立一个服务,sid为erp。关于oradim的命令另外给出专门解释。
◆(7):建立监听: net configuration assintant 来建立,或用脚本建立并且开启。
◆(8):打开数据库: 用oem也行,cmd下也行。
set oracle_sid=erp;
sqlplus "/as sysdba";
startup;
select * from v$instance;
至此,冷备份恢复成功。即使你现在用oem打开数据库时发现提示找不到sid ,但实际上你已经成功了,此时只需要重启一下的你的服务器就可以了。
-------------------------------------------
热备份
热备份是在数据库运行的情况下,采用archive log mode方式备份数据库的方法。热备份要求数据库处于archive log模式下操作,并需要大量的档案空间。一旦数据库处于archive loh
模式,就可以进行备份了,当执行备份时,只能在数据文件级或表空间进行。
过程:
1.准备工作
由于在备份过程中,数据库仍然是打开的,所以要求正在复制的各个数据文件管理的表空间必须处于备份模式。备份完后再脱离备份模式。因此备份前必须将ORACLE 数据库调整为归档模式。查看代码如下
查看当前数据库归档状态:ARCHIVE LOG LIST:以下为非归档
lt;img src="" data-rawwidth="505" data-rawheight="130" class="origin_image zh-lightbox-thumb" width="505" data-original=""/gt;
2数据库备份
2.1查询要备份表空间对应的数据文件的详细信息
select file_name from dba_data_files
where
tablespace_name='USERS';
2.2将表空间设为备份模式
ALTER TABLESPACE USERS BEGIN BACKUP;
2.3查看处于备份模式的数据文件:
select * from v$backup;
2.4使用操作系统命令备份表空间的数据文件
HOST COPY f:\BAK\ HOST COPY f:\oracle\oradata\orcl\*.dbf//将前面ORACLE数据库热备份的文件拷贝到系统目录中
2.5将表空间设置为正常模式
ALTER TABLESPACE USERS END BACKUP。
oracle 11g 如何往表中追加数据
如果是oracle,是两个数据库的话,先使用 dblink链接两个数据库,这样就能两个表互相访问.(你也可以通过其它方式吧table1的数据导入到table2的数据库中)
然后两个表的差异,你可以通过exists语法来完成
table1中存在,table2中不存在(表示这些数据要插入table2)
insert into table2 (col1,col2,col3,col4 ....)
select col1,col2,col3,col4 .... from table1 t1 where not exists ( select 1 from table2 t2 where t1.col1 = t2.col1 ......[两个表匹配唯一性条件需要自行判定])
这样就把不存在于table2的table1中的数据插入到table1中了.
我的oracle数据库里面覆盖了一张表,怎么还原
用oracle的
flashback
,可以还原查询某个时间点这个表中的数据,只要时间不要过去太久就可以,比如
SELECT
*
FROM
tt_tab
AS
of
TIMESTAMP(SYSDATE-1/24)
本文标题:oracle如何补表,oracle删除表怎么恢复
网页网址:http://azwzsj.com/article/dssccps.html