oracle清空所有表数据

方法:

1. 删除所有外键约束

2. drop表

3. 添加外键约束
代码使用powerdesign生成

/*==============================================================*/
/* DBMS name:   ORACLE Version 10g              */
/* Created on:   2013/8/16 14:30:03              */
/*==============================================================*/ 

alter table Da_pic
  drop constraint FK_DA_PIC_REFERENCE_DA_PICSU; 

drop table Da_pic cascade constraints; 

drop table Da_picsubject cascade constraints; 

/*==============================================================*/
/* Table: Da_pic                        */
/*==============================================================*/
create table Da_pic (
  ID          VARCHAR2(200)          not null,
  no          VARCHAR2(200),
  subjiectid      VARCHAR2(200),
  Name         VARCHAR2(400),
  UploadTime      DATE,
  UserId        VARCHAR2(200),
  picdate       DATE,
  place        VARCHAR2(200),
  people        VARCHAR2(200),
  event        VARCHAR2(200),
  background      VARCHAR2(200),
  cameramen      VARCHAR2(200),
  serial        INTEGER,
  IsEffect       VARCHAR2(200),
  constraint PK_DA_PIC primary key (ID)
); 

/*==============================================================*/
/* Table: Da_picsubject                     */
/*==============================================================*/
create table Da_picsubject (
  ID          VARCHAR2(200)          not null,
  no          VARCHAR2(200),
  title        VARCHAR2(200),
  year         VARCHAR2(200),
  type         VARCHAR2(200),
  gdtime        DATE,
  iseffect       VARCHAR2(200),
  seiral        INTEGER,
  constraint PK_DA_PICSUBJECT primary key (ID)
); 

alter table Da_pic
  add constraint FK_DA_PIC_REFERENCE_DA_PICSU foreign key (subjiectid)
   references Da_picsubject (ID);
(0)

相关推荐

  • 45个非常有用的 Oracle 查询语句小结

    日期/时间 相关查询 1.获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 "SYSDATE"来指定查询的日期. 复制代码 代码如下: SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month"     FROM DUAL; 2.获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任

  • oracle删除表字段和oracle表增加字段

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],-.); 修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],-.); 删除字段的语法:alter table tablename drop (column); 添加.修改.删除多列的话,用逗号隔开. 使用alter

  • oracle索引介绍(图文详解)

    对于数据库来说,索引是一个必选项,但对于现在的各种大型数据库来说,索引可以大大提高数据库的性能,以至于它变成了数据库不可缺少的一部分. 索引分类:逻辑分类single column or concatenated  对一列或多列建所引unique or nonunique 唯一的和非唯一的所引,也就是对某一列或几列的键值(key)是否是唯一的.Function-based  基于某些函数索引,当执行某些函数时需要对其进行计算,可以将某些函数的计算结果事先保存并加以索引,提高效率. Doman 

  • window中oracle环境变量设置方法分享

    window server中Oracle的环境变量设置 1.右击"我的电脑"->选择"属性"->选择"高级"->单击"环境变量"2.选择"Path"这一行,单击"编辑",在"Path"的变量值文本框的最后面先加入一个分号":",然后再分号后面加入sqlplus文件的目录路径,如"C:\Program Files\orac

  • oracle清空所有表数据

    方法: 1. 删除所有外键约束 2. drop表 3. 添加外键约束 代码使用powerdesign生成 /*==============================================================*/ /* DBMS name: ORACLE Version 10g */ /* Created on: 2013/8/16 14:30:03 */ /*=======================================================

  • oracle 批量删除表数据的几种方法

    1.情景展示 情景一: 删除PRIMARY_INDEX_TEST表中,MINDEX_ID字段为空的数据 情景二: 删除VIRTUAL_CARD_TEST表中的脏数据 2.解决方案 情景一的解决方案: DELETE FROM PRIMARY_INDEX_TEST WHERE MINDEX_ID IS NULL 情景二的解决方案: 方案1:使用快速游标法(删除一次提交一次): --快速游标法 BEGIN FOR TEMP_CURSOR IN (SELECT ID FROM VIRTUAL_CARD3

  • oracle delete误删除表数据后如何恢复

    1.根据时间进行恢复 此种方式需要我们大致知道执行delete语句的时间. 查询系统当前时间:select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) from dual; 假设在2022-04-02 16:27:11分钟,执行了删除语句delete from demo ; 此时已经表中不能查询到数据了.我们知道delete执行的时间,往前推1分钟(delete执行时间之前都可以,越小越好,本例以1分钟为例),执行如下语句 select * from DEM

  • mysql清空表数据的两种方式和区别解析

    在MySQL中删除数据有两种方式: truncate(截短)属于粗暴型的清空 delete属于精细化的删除 删除操作 如果你需要清空表里的所有数据,下面两种均可: delete from tablename; truncate table tablename; 而如果你只是删除一部分数据,就只能使用delete: delete from tablename where case1 and case2; 区别 在精细化的删除部分数据时,只能使用delete. 而清空所有表数据时,两者均可,此时这两

  • 如何将Oracle的一个大数据表快速迁移到 Sqlserver2008数据库(图文教程)

    oracle 服务器  版本  11.2.0.1.0 Sqlserver2008  R2 前提条件是 SQLSERVER服务器上安装了Oracle客户端并且进行了配置 不会配置的请参照 这个链接 1  登录MSSM 工具 2 选中其中一个数据库  右键⇒任务⇒导入数据 3   打开窗口 Sqlserver导入和导出向导   点击下一步 4 进入选择数据源画面 a: 数据源 选择  Microsoft OLE DB Provider for Oracle  然后 点击 右侧的 属性 按钮 5  数

  • Oracle两张表关联批量更新其中一张表的数据

    方法一(推荐): UPDATE 表2 SET 表2.C = (SELECT B FROM 表1 WHERE 表1.A = 表2.A) WHERE EXISTS (SELECT 1 FROM 表1 WHERE 表1.A = 表2.A); 尤其注意最后的外层where条件尤为重要,是锁定其批量更新数据的范围. 方法二: MERGE INTO 表2 USING 表1 ON (表2.A = 表1.A) -- 条件是 A 相同 WHEN MATCHED THEN UPDATE SET 表2.C = 表1.

  • Oracle 跨库 查询 复制表数据 分布式查询介绍

    方法一: 在目前绝大部分数据库有分布式查询的需要.下面简单的介绍如何在oracle中配置实现跨库访问. 比如现在有2个数据库服务器,安装了2个数据库.数据库server A和B.现在来实现在A库中访问B的数据库. 第一步.配置A服务器端的tnsnames.ora文件(TNSNAMES.ORA Network Configuration File),该文件存放的位置为: $ORACLE_HOME/network/admin/tnsnames.ora 添加如下行,其中DBLINK为连接名(可自定义)

  • Oracle误删除表数据后的数据恢复详解

    Oracle误删除表数据后的恢复详解   测试环境: SYSTEM:IBM AIX 5L                         Oracle Version:10gR2 1. undo_retention参数的查询与修改 使用show parameter undo命令查看当前的数据库参数undo_retention设置. 显示如下: SQL> show parameter undo NAME                                 TYPE        VAL

  • 清空所有表中的数据的存储过程

    复制代码 代码如下: --******************************************************* --* 清空所有表中的数据 * --* 撒哈拉大森林 * --* 2010-6-28 * --******************************************************* if exists (select * from sysobjects where type='P' and name=N'P_DeleteAllData'

  • Oracle对两个数据表交集的查询

    正在看的ORACLE教程是:Oracle对两个数据表交集的查询.Oracle关系型数据库管理系统是世界上流行的关系数据库,它是一个极其强大.灵活和复杂的系统,据说,在使用oracle时应有这样的思想,那就是在SQL中几乎可以实现任何一种想法. 下面向大家介绍使用SQL查两个Oracle数据表查询的相同数据的方法,笔者感到这两种方法执行效率高.使用方便. 第一种方法:利用操作符intersect intersect操作符用来合并两个查询,返回两个查询中都存在的记录,即返回两个查询结果的交集,前提是

随机推荐