当前位置: 首页 > 编程日记 > 正文

Oracle重建所有表和索引

定义两个存储过程,先执行表移动,再执行索引重建。
(如果记录很多,执行时间可能会很长,几个小时也有可能,建议在系统空闲时运行):

create or replace procedure p_remove_all_table
 (tablespace_name in varchar2)--这里是表空间名,如果不改变表空间,可以传入null
as
  sqlt varchar(200);
begin
    --取所有非临时表
    for tab in (select table_name, tablespace_name from user_tables where temporary = 'N') loop
        if tablespace_name is null then
            --如果为null,则在本表空间下移动           
            sqlt := 'alter table ' || tab.table_name || ' move';
        elsif upper(tablespace_name) <> tab.tablespace_name then
            --如果目标表空间和现在的表空间不一致,则移动到新的表空间
            sqlt := 'alter table ' || tab.table_name || ' move tablespace ' || tablespace_name;
        else
            --如果目标表空间和现在的表空间要同,则跳过
            goto continue; 
        end if ;
      
        dbms_output.put_line(sqlt);
        EXECUTE IMMEDIATE sqlt;
      
        <<continue>>
        null;
     end loop;
end;
/*
功能:为数据表改变表空间,或在同一表空间下移动到不同的数据段。
说明:如果传入null,则把所有表在原表空间下移动到一个新的数据段
      如果传入的是一个表空间的名称,则所有表都移动到这个新的表空间下,如果
      某个表本来就在这个表空间下,则跳过。
作者:81,  2007年6月26日
*/

create or replace procedure p_rebuild_all_index
   (tablespace_name in varchar2,--这里是表空间名,如果不改变表空间,可以传入null
   only_unusable in boolean)    --是否仅对无效的索引操作                                                                                                      
as
   sqlt varchar(200);
begin
    --只取非临时索引
    for idx in (select index_name, tablespace_name, status from user_indexes where temporary = 'N') loop
        --如果是如重建无效的索引,且当索引不是无效时,则跳过
        if only_unusable = true and idx.status <> 'UNUSABLE' then
           goto continue;
        end if;
       
        if (tablespace_name is null) or idx.status = 'UNUSABLE' then
           --如果没有指定表空间,或索引无效,则在原表空间重建
           sqlt := 'alter index ' || idx.index_name || ' rebuild ';
        elsif upper(tablespace_name) <> idx.tablespace_name then
           --如果指定的不同的表空间,则在指定表空间待建索引
           sqlt := 'alter index ' || idx.index_name || ' rebuild tablespace ' || tablespace_name;
        else
           --如果表空间相同,则跳过
           goto continue;
        end if;
       
        dbms_output.put_line(idx.index_name);
        EXECUTE IMMEDIATE sqlt;
        <<continue>>
        null;
     end loop;
end;
/*
功能:重建索引。
说明:如果表空间参数传入null,则在原表空间内重建索引,否则在目标表空间重建索引。
      如果表空间相同,则跳过。
      only_unusable表示是否只对无效的索引进行重建
作者:81,   2007年6月26日
*/

转载于:https://www.cnblogs.com/81/archive/2007/03/30/693759.html

相关文章:

线性回归预测PM2.5值

文章目录一、问题描述二、设计简要描述三、程序清单四、结果分析五、调试报告六、实验总结一、问题描述 希望用线性回归解决问题&#xff1a; 给定某个地区连续9小时包括PM2.5在内的18项污染物每小时的数据&#xff0c;预测第10个小时的PM2.5的值。 二、设计简要描述 机器学…

Sharding-eth

原文&#xff1a;https://github.com/ethereum/wiki/wiki/Sharding-FAQ 作者&#xff1a;vbuterin 简介 目前&#xff0c;在所有的区块链协议中每个节点存储所有的状态&#xff08;账户余额&#xff0c;合约代码和存储等等&#xff09;并且处理所有的交易。这提供了大量的安全性…

用CSS3制作很特别的波浪形菜单

用CSS3制作很特别的波浪形菜单 原文:用CSS3制作很特别的波浪形菜单网页菜单我们见过很多&#xff0c;各种炫酷的、实用的菜单比比皆是。昨天我看到一款很特别的CSS3菜单&#xff0c;它的外形是波浪形的&#xff0c;弯弯曲曲&#xff0c;结合背景&#xff0c;看上去还挺不错的&a…

二分类任务:确定一个人是否年收入超过5万美元

文章目录一、 问题描述二、 设计简要描述三、 程序清单四、 结果分析五、 调试报告六、 实验总结一、 问题描述 学会使用学习到的概率生成模型相关的知识&#xff0c;找出各类别最佳的高斯分布&#xff0c;从而达到通过输入测试&#xff0c;完成二分类任务&#xff0c;成功预测…

Android Splash界面支持用户点击 直接进入主界面

转载请注明出处&#xff1a;http://blog.csdn.net/lmj623565791/article/details/23613403 现在大部分APP都有Splash界面&#xff0c;下面列一下Splash页面的几个作用&#xff1a; 1、展示logo,提高公司形象 2、初始化数据 (拷贝数据到SD) 3、提高用户体验 4、连接服务器是否有…

Python爬一下抖音上小姐姐的视频~

image.png在简书也码了1W多字了&#xff0c;发现还是爬虫类的文章看的人多。 算法工程师现在都啥价位了&#xff0c;你们还在看爬虫→_→ 介绍 这次爬的是当下大火的APP--抖音&#xff0c;批量下载一个用户发布的所有视频。 各位也应该知道&#xff0c;抖音只有移动端&#xff…

哈哈,我的博客开通啦,欢迎光临~~~~~~~~~~~~

毕业快一年了&#xff0c;参加工作一年多了&#xff0c;几多苦闷&#xff0c;几多快乐。用某某人的话说就是“痛苦并快乐着&#xff01;”。工作了&#xff0c;才发现现实和理想真的有差距啊&#xff01;但我将直面“惨淡”的程序人生。希望与同龄人&#xff0c;不同龄人共勉。…

逻辑回归:确定一个人是否年收入超过5万美元

文章目录1. 问题描述2. 设计简要描述3. 程序清单4. 结果分析5. 调试报告6. 实验小结1. 问题描述 学会使用学习到的逻辑回归的知识&#xff0c;手动使用梯度下降方法&#xff0c;通过给定的相关数据来完成年薪是否高于50k的二分类预测任务。 2. 设计简要描述 机器学习的三个基…

【特征匹配】ORB原理与源码解析

相关 : Fast原理与源码解析 Brief描述子原理与源码解析 Harris原理与源码解析 http://blog.csdn.net/luoshixian099/article/details/48523267 ORB特征提取详解 ORB特征点检测 为了满足实时性的要求&#xff0c;前面文章中介绍过快速提取特征点算法Fast,以及特征描述子Brief。…

C# 的三种序列化方法

序列化是将一个对象转换成字节流以达到将其长期保存在内存、数据库或文件中的处理过程。它的主要目的是保存对象的状态以便以后需要的时候使用。与其相反的过程叫做反序列化。 序列化一个对象 为了序列化一个对象&#xff0c;我们需要一个被序列化的对象&#xff0c;一个容纳被…

DotNetNuke(DNN)网站发布、部署、迁移和重建

DotNetNuke(DNN)网站本质上是一个ASP.NET网站&#xff0c;由网站文件&#xff08;也就是website目录&#xff09;和数据库组成的&#xff0c;所以&#xff0c;“发布、部署、迁移和重建”实际上也就是把网站文件和数据库文件拷贝到服务器上并修改相应设置的过程。对于"发布…

PyTorch基础与简单应用:构建卷积神经网络实现MNIST手写数字分类

文章目录(一) 问题描述(二) 设计简要描述(三) 程序清单(四) 结果分析(五) 调试报告(六) 实验小结(七) 参考资料(一) 问题描述 构建卷积神经网络实现MNIST手写数字分类。 (二) 设计简要描述 机器学习的三个基本步骤—— 程序设计思路——(此图放大可看清) (三) 程序清单 …

from selenium.webdriver.support.ui import Select

from selenium.webdriver.support.ui import SelectSelect(d.find_element_by_id(ukey_开户行)).first_selected_option.text转载于:https://www.cnblogs.com/paisen/p/3669272.html

rocketmq-flink

https://github.com/apache/rocketmq-externals/tree/master/rocketmq-flink https://issues.apache.org/jira/browse/ROCKETMQ-82

基于Numpy构建全连接前馈神经网络进行手写数字识别

文章目录(一) 问题描述(二) 设计简要描述(三) 程序清单(四) 结果分析(五) 调试报告(六) 实验小结(一) 问题描述 不使用任何机器学习框架&#xff0c;仅仅通过Numpy库构建一个最简单的全连接前馈神经网络&#xff0c;并用该网络识别mnist提供的手写数字体。 (二) 设计简要描述…

sqlserver 三种恢复模式

sql server数据库提供了三种恢复模式&#xff1a;完整&#xff0c;简单和大容量日志&#xff0c;这些模式决定了sql server如何使用事务日志&#xff0c;如何选择它要记录的操作&#xff0c;以及是否截断日志。截断事务日志是删除己执行事务并把该日志空间让给新事务的过程&…

Confluence 6 配置日志

我们推荐你根据你的需求来配置你自己的 Confluence 日志。你可以有下面 2 种方法来修改你的日志&#xff1a;通过 Confluence 管理员控制台进行配置 – 你的修改仅在本次修改有效&#xff0c;下次重启后将会把所有修改重置。编辑属性文件 – 你的修改将会在下次重启后生效同时针…

最近最近在微软的Mobile Soft factory

最近公司在做PDA项目的开发&#xff0c; 我主要负责Mobile的框架设计和开发。以前都是在做winform程序&#xff0c;对Mobile 的开发 知之甚少&#xff0c;现在突然开始做mobile的项目&#xff0c;压力有点大&#xff01; 不知该从何处下手&#xff0c;幸好发现微软提供的Mobile…

神经网络训练技巧

文章目录一、问题描述二、 设计简要描述三、程序清单四、结果分析五、调试报告六、实验小结一、问题描述 基于二元函数f(x,y)z1/20 x2y2掌握梯度下降和权重初始化的技巧&#xff0c;基于手写体识别掌握正规化和两种防止过拟合的技巧。 二、 设计简要描述 梯度下降方法 1.1.1 …

Unix的轻巧“约取而实得”(上篇)

在经过上机操作实践以及掌握Unix系统相关的基础知识之后&#xff0c;可以说已跨进了迈向成功的门槛。接着要登堂入室&#xff0c;继续专进&#xff0c;就必须更加深入的了解Unix基本命令的功能、使用并掌握一些必备的技巧。这一轮学习会有一定难度&#xff0c;需要强烈的求知欲…

操作系统2--操作系统结构

操作系统结构 操作系统的结构需要从这几个方面来考虑:他为用户提供了哪些服务和界面,系统各个组成部分及其相互关系 操作系统的操作 大致可分为:进程管理,主存管理,文件管理,辅存管理和IO管理 进程管理 进程的创建和结束进程的挂起和恢复进程锁\进程交互\进程死锁的规则内存管理…

Windows环境下启动Mysql服务提示“1067 进程意外终止”的解决方案

2019独角兽企业重金招聘Python工程师标准>>> 在Windows服务里启动Mysql服务时提示“1067 进程意外终止”。 此时我们打开计算机管理查看Windows日志&#xff0c;如下图所示&#xff1a; 完整错误提示如下&#xff1a; The server option lower_case_table_names is …

不使用任何框架实现CNN网络

文章目录一、 问题描述二、 设计简要描述三、程序清单四、结果分析五、调试报告六、实验小结一、 问题描述 基于Numpy和函数im2col与col2im来实现一个简单的卷积神经网络&#xff0c;将其用于手写体识别。 二、 设计简要描述 机器学习的三个基本步骤—— 程序设计思路——(…

关于刘冬大侠Spring.NET系列学习笔记3的一点勘正

诚如他第22楼“只因渴求等待”提出的疑问一样&#xff0c;他的下面那一段代码是存在一点点问题的&#xff0c; XElement root XElement.Load(fileName);var objects from obj in root.Elements("object") select obj; 如果照搬照抄刘冬大侠的这段代码那是不会成功读…

什么叫做KDJ指标

什么叫做KDJ指标 KDJ指标的中文名称是随机指数&#xff0c;最早起源于期货市场。 KDJ指标的应用法则KDJ指标是三条曲线&#xff0c;在应用时主要从五个方面进行考虑&#xff1a;KD的取值的绝对数字&#xff1b;KD曲线的形态&#xff1b;KD指标的交叉&#xff1b;KD指标的背离&a…

vim常用命令总结 (转)

在命令状态下对当前行用 &#xff08;连按两次&#xff09;, 或对多行用n&#xff08;n是自然数&#xff09;表示自动缩进从当前行起的下面n行。你可以试试把代码缩进任意打乱再用n排版&#xff0c;相当于一般IDE里的code format。使用ggG可对整篇代码进行排版。 vim 选择文本&…

敏捷过程、极限编程和SCRUM的关系

极限编程是最知名的敏捷开发过程&#xff0c;SCRUM是最经典的极限编程。 层次关系从大到小是&#xff1a;敏捷过程>极限编程>SCRUM

C#双面打印解决方法(打印word\excel\图片)

最近需要按顺序打印word、excel、图片&#xff0c;其中有的需要单面打印&#xff0c;有的双面。网上查了很多方法。主要集中在几个方式解决 1、word的print和excel的printout里设置单双面 2、printdocument里的printsettings的duplex设置单双面 试过之后效果都不好&#xff0c;…

【leetcode】589. N-ary Tree Preorder Traversal

题目如下&#xff1a; 解题思路&#xff1a;凑数题1&#xff0c;话说我这个也是凑数博&#xff1f; 代码如下&#xff1a; class Solution(object):def preorder(self, root):""":type root: Node:rtype: List[int]"""if root None:return []re…

MSDN Visual系列:创建Feature扩展SharePoint列表项或文档的操作菜单项

原文&#xff1a;http://msdn2.microsoft.com/en-us/library/bb418731.aspx在SharePoint中我们可以通过创建一个包含CustomAction元素定义的Feature来为列表项或文档添加一个自定义操作菜单项(Entry Control Block Item)。我们可以添加自定义命令到默认的SharePoint用户界面中。…