Oracle数据库表的备份和数据表的删除操作

--Oracle数据库中的表备份:
--备份语句:在备份之后就可以将这张表的所有数据源删除了,但是之后有人对这张表的数据进行操作,但是在操作完成之后要记得将数据表恢复
CREATE TABLE DZHYUKKT_BACKUP AS SELECT * FROM DZHYUKKT;
--查询备份是不是成功:
SELECT * FROM DZHYUKKT_BACKUP;--可以查出数据,证明备份成功

--还原数据库备份的表:
INSERT INTO DZHYUKKT SELECT * FROM DZHYUKKT_BACKUP;

--清空数据库表信息的两种方法:

--1、delete from t

--2 、truncate table t

 --区别: 

--1、delete是dml操作;truncate是ddl操作,ddl隐式提交不能回滚

--2、delete from t可以回滚,truncate table t 不可以回滚

--3、 truncate table t 执行效率更高,会回收表空间,delete from t执行效率慢,不会回收表空间

--4、 truncate table t高水线下降,delete from t高水线不降(这个不太明白...)自增ID,TRUNCATE后从1开始,DELETE后还是接着自增

--调用delete删除表数据:
DELETE FROM DZHYUKKT;
COMMIT;

--使用备份表:DZHYUKKT_BACKUP恢复DZHYUKKT;
INSERT INTO DZHYUKKT SELECT * FROM DZHYUKKT_BACKUP;
COMMIT;
--正常恢复数据
时间: 2024-10-05 23:50:45

Oracle数据库表的备份和数据表的删除操作的相关文章

Oracle中使用游标获取指定数据表的所有字段名对应的字符串

操作步骤:打开PLSQL Developer后,直接执行下面的语句就可以出来 --Oracle中使用游标获取指定数据表的所有字段名对应的字符串 declare mytablename VARCHAR(255):='STAFFDOC'; --定义要查询的数据表名变量,STAFFDOC为我测试用的数据表名,请修改成您的数据库中的对应数据表名字mystring NVARCHAR2(4000):=''; --定义要输出的字符串变量 cursor mycursor is --定义游标          s

Oracle数据库访问其他用户下的表,不加表所属的用户名的实现方法

一. 问题: 如何实现在Oracle数据库中访问其他用户的表时不需加表所属的用户名 二. 举例: Oracle里面的用户A,要访问用户B的表需要带用户B的前缀,如访问用户B的 TEST表,需要这样访问 select * from B.TEST;现在就是问如何才能无需添加用户名的前缀. 三. 原因: 方便访问常用表 隐藏表的用户 四. 解决方案: 1. 创建同义词(最好的方式) 语法: CREATE [PUBLIC] SYNONYM synonym_name FOR [schema.] objec

python Django教程 之 模型(数据库)、自定义Field、数据表更改、QuerySet API

python  Django教程  之 模型(数据库).自定义Field.数据表更改.QuerySet API 一.Django 模型(数据库) Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在settings.py中配置即可,不用更改models.py中的代码,丰富的API极大的方便了使用. 本节的代码:(Django 1.6, Python 2.7 测试环境) 大

Navicat工具进行Oracle数据库复制 or 备份、还原功能(由评教需要所谈)

GXPT是一个分布式系统,此系统暂时包含权限系统.基础系统.评教系统.考试系统,各个系统建有自己的oracle数据库.我们小组负责的是评教系统,而评教系统的正常需要借助于权限系统和基础系统,具体的业务这里就不多解释了.近期要进行评教活动了,基础系统在往基础库中录入真实数据,而评教系统还想进行一下功能及压力测试,当然就不同直接操作基础真实数据库的数据了,于是我们准备了一台装有oracle的备用服务器,作为测试使用. Oracle数据库不能像SqlServer那样直接进行备份还原.我首先建好了基础系

随机获取oracle数据库中的任意一行数据(rownum)

最近看oracle资料的时候,了解rownum的概念,以前只知道对数据库表进行简单的增删改查: 看到了rownum的概念后,突然想到了好多业务场景应该都可以适用的,比如在进行随机发奖的时候, 我们就可以从先查一下奖品表中可以发的总奖品数,然后通过java的Random类在总奖品数内生成一个随机整数X,然后调用 select * from (select rownum no,id from Table where rownum<=X ) where no >=X 获取出该条奖品,这样获取出来的值

【SQL Server】sql server更改了数据表的字段/新增数据表的字段 无法保存

sql server更改了数据表的字段/新增数据表的字段  无法保存 解决方法:进入 工具-->选项-->Designers-->表设计器和数据库设计器-->取消勾选   即可

Windows环境下Oracle数据库的自动备份脚本

批处理文件(.bat) @echo off echo ================================================ echo  Windows环境下Oracle数据库的自动备份脚本 echo  1. 使用当前日期命名备份文件. echo  2. 自动删除7天前的备份. echo ================================================ ::以“YYYYMMDD”格式取出当前时间. set BACKUPDATE=%date

JDBC访问Oracle数据库例子源代码,包括创建table,删除table,插入记录,删除记录,查询记录等

package com.cb; public class SMSInfo { public static String ITEMINDEX = "sms_index"; public static String ITEMTO = "sms_to"; public static String ITEMFROM = "sms_from"; public static String ITEMMSG = "sms_msg"; publ

oracle数据库管理员简介、导入数据与导出数据

数据库管理员: sys和system的权限区别:sys:所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行时至关重要的,由数据库 自己维护,任何用户都不能手动更改,sys用户拥有dba.sysdba.sysoper角色或权限,是oracle权限最高的用户. system:用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息,system用户拥有dba.sysdba角色或系统权 限. sys和system的登陆方式不同:sys用户必须以a