ORACLE
熊博主
勤 静 战
展开
-
ORACLE-查询表和表空间的基本情况
/* 查询表分配的空间大小,不管空间是否被占用*/-- 单位:MBselect segment_name,bytes/1024/1024 "分配空间(MB)"from user_segments where segment_type='TABLE' AND SEGMENT_NAME='TABLE_NAME'; /*查看表实际占用空间大小*/-- 单位:MBselect segment_name,sum(bytes)/1024/1024 AS "实际使用量(MB)" from User_原创 2021-04-30 12:03:42 · 565 阅读 · 0 评论 -
ORACLE-安装PL/SQL developer连接oracle数据库
ORACLE-安装PL/SQL developer连接oracle数据库1. 下载Instant ClientOracle官网地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.htmlwin10 64位下载地址:https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html下载后是原创 2021-02-10 11:58:51 · 1849 阅读 · 2 评论 -
ORACLE-去除表中重复的记录,仅保留第一条记录
通过over()函数,对数据分组加序号,最后再进行筛选去重。select row_number() over(partition by a.分组列 order by a.排序列) rn,a.* from table_name a;原创 2020-10-13 11:45:50 · 459 阅读 · 0 评论 -
Oracle--初学小白基础篇(第一版)
文章目录一、Oracle11g介绍1、Oracle11g安装和卸载Oracle11g安装Oracle11g卸载1、使用Oracle Universal Installer管理工具卸载2、使用`deinstall.bat`批处理文件卸载2、Oracle管理工具①SQL*PLUS②PLSQL Developer③OEM(Oracle企业管理器)二、Oracle11g体系结构1、Oracle为什么要有一个复杂的体系结构?2、Oracle数据库管理系统的体系结构1. Oracle服务器2. Oracle实例3. O原创 2020-06-04 21:24:23 · 4535 阅读 · 2 评论 -
ORACLE-批量生成32位不同的ID【如:f54f5560-e08e-4412-8c38-dab5ae8ad011】
今日系统存在一个报表故障,发现一些数据缺失了。一查,原来是数据没有同步过去。要恢复,只能手工同步了。查了下相关表的结构和数据,发现有一列ID的值是这种形式的193ded83-f22c-11e8-b606-02007b91000e,要想批量插入数据,就得先生成这个ID,而且要保证生成的不重复,不然可能会因为主键约束插入不成功。上网看看大神怎么操作的,发现大部分讲的不是很清楚,找了半天,终于给我看到个感觉可以成功的方法。有一个函数sys_guid()于是,满怀心情的试验一波。select sys_gui原创 2020-05-21 11:51:30 · 1468 阅读 · 3 评论 -
ORACLE-解决in子句内不能超过1000行的方法
在日常使用SQL导数据时,会遇到这样一个问题。select * from tab1 where id in(1,2,3);这是一个很简单的语句,但是存在一个问题,如果in里面不是3个选择,而是10000个选择。这时候难道写成这样:select * from tab1 where id in(1,2,3,4,....10000);这样写未免太过繁琐,而且存在一个问题。Oracle限制了in子句不能超过1000行。。。。。 写成这样压根就运行不了!!!解决方法:①创建一个表test,把数据复制粘贴进原创 2020-05-19 13:56:25 · 2514 阅读 · 0 评论 -
ORACLE-Oracle锁表及其解决方法
本文讲解开发经常会遇到的情况,即锁表与表解锁。锁表1、执行DML操作未提交锁表当一个表被多个人操作时,假设A进行了DML操作,在没有提交的情况下,该表是上锁的,B是无法对该表进行DML操作的。若B进行DML,则会一直等待,直到该表解锁。如下步骤:打开一个cmd,然后A查询表ex1。A对表ex1做delete操作,但不执行commit,就把运行界面一直放着。这时打开另一个cmd,B仍然...原创 2019-12-19 20:23:45 · 1689 阅读 · 0 评论 -
ORACLE-误用delete删除数据的恢复
https://blog.csdn.net/zhijunming/article/details/88172701转载 2019-12-19 15:17:25 · 261 阅读 · 0 评论 -
ORACLE-利用数据泵(expdp\impdp)导出导入用户表
在之前写过的一篇博客里说到如何通过exp和imp导出导入用户表,而在Oracle10g开始,引入了数据泵工具,这种工具包含之前版本的所有的导出导入的工具,并且速度更快更安全。数据泵命令:expdp:导出工具impdp:导入工具在Oracle10g\11g\12c,为了系统的安全,不允许再使用绝对路径,而是采用了一种映射的方式:绝对路径→目录对象。通过read和write该目录对象,以获...原创 2019-12-14 16:31:56 · 1261 阅读 · 0 评论 -
ORACLE-exp导出和imp导入用户表
在另一篇博客有说到利用exp和imp导出和导入一个普通用户(不包含分区表的用户),那现在这篇就来说下导出和导入一个用户的某些表。实验环境:1、Oracle11g企业版2、登录scott用户实验过程为了不影响scott自带的表,我们使用以下语句创建两张测试表。create table ex1 as select * from emp;create table ex2 as select...原创 2019-12-13 20:43:51 · 414 阅读 · 0 评论 -
ORACLE-段收缩
实验环境1、oracle 11g2、 登录用户system基本概念收缩段:当一个段被收缩时,段中的数据被压缩,高水线(HWM)下移,并且磁盘空间被释放给包含此段的表空间。段收缩=数据压缩+HWM下移稀疏填充段:即一个实际使用的空间远小于实际分配给它的空间的段。行迁移(行移动):收缩表的操作可能会造成表中数据行的ROWID的改变,故在执行一个表的收缩操作之前必须开启这个表的行移动功能。...原创 2019-12-12 20:57:35 · 498 阅读 · 0 评论 -
ORACLE-Oracle12c完全卸载
由于之前安装的数据库版本是12c的标准版,不能满足目前的使用需求,故想着卸载重装11g。看到一篇博客挺好的,分享一下。链接如下:Oracle12卸载转载 2019-12-12 13:35:23 · 576 阅读 · 0 评论 -
ORACLE-查看当前ORACLE版本是否支持表分区功能
最近遇到分区表导入数据库的问题,一直导入失败,最终发现应该是数据库版本的问题。我安装的就是Oracle12c的标准版,不支持表分区功能,要重装企业版。查询是否支持表分区功能方法如下:1、登录system或者sys用户2、运行一下语句:select * from v$option;可以看到Partitioning的值为FALSE,故不支持表分区功能。...原创 2019-12-12 13:19:48 · 1434 阅读 · 0 评论 -
ORACLE-exp导出和imp导入用户
在网上看了挺多篇使用exp命令和imp命令导入用户的例子,发现都不是很满意。所以我自己通过多次实验,终于得到一个令人满意的方法。exp导出用户我们以scott用户为例。1、首先,我们看下在Oracle数据库系统中是否有scott用户。可以看到,是有scott这个用户的,然后退出数据库系统,进入cmd。2、运行一下命令,生成dmp文件。exp scott/tiger@Q owner=s...原创 2019-12-09 23:08:36 · 943 阅读 · 0 评论 -
ORACLE-快速创建scott和hr用户
快速创建scott和hr用户刚安装完Oracle 12c之后,该版本的数据库系统scott和hr用户是不可用的。如图:在system用户下查看scott和hr用户是否存在alter user scott identified by tiger account unlock;alter user hr identified by hr account unlock;发现这两个用户不存...原创 2019-12-08 20:08:40 · 847 阅读 · 1 评论 -
ORACLE-Database Configuration Assistant创建数据库
Database Configuration Assistant创建数据库1、打开DCA原创 2019-12-08 13:34:13 · 2058 阅读 · 0 评论 -
ORACLE-高水线的使用和直接装入数据详解
实验环境1、oracle12c2、登录用户system一、直接装入数据1、串行直接装入insert /*+ append*/ into scott.emp1 nologging select * from scott.emp;2、并行直接装入修改DML操作的方式为parallelalter session enable parallel DML;并行插入数据,2个数据块同时插...原创 2019-12-04 21:31:41 · 476 阅读 · 0 评论