![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ORACLE数据库
文章平均质量分 77
langgufu314
这个作者很懒,什么都没留下…
展开
-
Oracle调优总结--2(经典实践 重要)
Oracle SQL性能优化(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection...原创 2014-11-24 15:43:38 · 118 阅读 · 0 评论 -
oracle sqlplus登陆命令(转载)
oracle sqlplus登陆命令 首先,进入sqlplus,可以如下方法:第一种:cmd下输入 sqlplus 然后命令行连接成功后,输入用户名和口令第二种:cmd下输入 sqlplusw/nolog 或者 sqlplusw 启动sqlplus界面工具 其次,登陆口令格式:1,{<username>[/<password>][@&l...原创 2015-04-03 09:59:58 · 669 阅读 · 0 评论 -
Oracle ORA-01555快照过旧的错误(转载)
第一篇文章: 首先了解Oracle在什么情况下会产生ORA-01555错误:假设有一张6000万行数据的testdb表,预计testdb全表扫描1次需要2个小时,参考过程如下:1、在1点钟,用户A发出了select * from testdb;此时不管将来testdb怎么变化,正确的结果应该是用户A会看到在1点钟这个时刻的内容。2、在1点30分,用户B执行了upd...原创 2015-02-25 16:31:57 · 5240 阅读 · 0 评论 -
Oracle中的不等于号(转)
今天碰到一个Oracle不等于的问题,最后搜索了一下,发现下面资料,拿来跟大家分享一下 关于Oracle中的不等于号: 在Oracle中, <> != ~= ^= 都是不等于号的意思。都可以使用。 但是奇怪是的, 我想拿出price不是180000的商品时:(price是Number类型的) SELECT id, name FROM product where price&...原创 2014-07-29 16:02:57 · 275 阅读 · 0 评论 -
oracle创建分区表,以及非分区表转分区表(转载)
什么是分区表,分区表详解:http://langgufu.iteye.com/blog/1552042本文原出处:http://blog.csdn.net/tianlesoftware/archive/2009/10/23/4717318.aspx 将普通表转换成分区表有4种方法: 1. Export/import method 2. Inser...原创 2015-01-22 17:14:35 · 160 阅读 · 0 评论 -
oracle游标详解
Oracle游标循环 第一种使用loop 循环 open c_postype; 0. loop fetch c_postype into v_postype,v_description ; exit when c_postype%notfound; …… end loop colse ...原创 2015-01-15 16:55:34 · 179 阅读 · 0 评论 -
oracle 自定义类型 type / create or replace type (转载)
<!--正文 begin-->一:Oracle中的类型有很多种,主要可以分为以下几类:1、字符串类型。如:char、nchar、varchar2、nvarchar2。 2、数值类型。如:int、number(p,s)、integer、smallint。 3、日期类型。如:date、interval、timestamp。 4、PL/SQL类型。如:pls_...原创 2014-07-17 15:21:00 · 9542 阅读 · 0 评论 -
能使 Oracle 索引失效的七大限制条件
Oracle 索引的目标是避免全表扫描,提高查询效率,但有些时候却适得其反。例如一张表中有上百万条数据,对某个字段加了索引,但是查询时性能并没有什么提高,这可能是 oracle 索引失效造成的。oracle 索引有一些限制条件,如果你违反了这些索引限制条件,那么即使你已经加了索引,oracle还是会执行一次全表扫描,查询的性能不会比不加索引有所提高,反而可能由于数据库维护索引的系统开销造成性能更...原创 2014-01-27 16:21:26 · 167 阅读 · 0 评论 -
Oracle中的 UPDATE FROM 解决方法(更新表时引用其它表的字段)
在表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据。象sql server提供了update的from 子句,可以将要更新的表与其它的数据源连接起来。虽然只能对一个表进行更新,但是通过将要更新的表与其它的数据源连接起来,就可以在update的表达式中引用要更新的表以外的其它数据。例如:UPDATE Table2SET Table2.ColB = Table2.ColB + T...原创 2013-12-27 14:51:35 · 487 阅读 · 0 评论 -
【转】oracle存储过程导出表数据为TXT文件【全表字段】
-*********************************************************************--***--***首先以dba或者是其他具有create directory的用户创建directory,然后授权。这一步很重要,否则后面执行存储过程会报异常--***--*******************************************...原创 2014-05-07 17:33:26 · 916 阅读 · 0 评论 -
详细介绍ORACLE sqlplus命令(转)
一、ORACLE的启动和关闭1、在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oraclea、启动ORACLE系统oracle>svrmgrlSVRMGR>connect internalSVRMGR>startupSVRMGR>quitb、关闭ORACLE系统oracle>svrmgrlSVRMGR&g...原创 2015-04-03 10:05:22 · 119 阅读 · 0 评论 -
oracle 执行计划为什么不走hash join?(转载)
今天,某省的同事来告诉我,表重组后,他用于统计的一个sql脚本运行变慢了,之前只需要17、8分钟能出来的结果,现在1小时40分钟左右才能出来结果。我们一起来看看脚本中的一个sql:SQL> explain plan for 2 select a.startdate,b.subsid from tab_1 a,tab_2 b where 3 a.servid='025...原创 2015-04-07 14:34:37 · 1706 阅读 · 0 评论 -
解读Oracle执行计划
本篇解释执行计划中基本项的含义关于生成和显示Oracle执行计划的方法请阅读http://blog.csdn.net/laoshangxyc/article/details/8629123下面举例进行解释 [html] view plaincopySQL> explain plan for 2 select a.name,b...原创 2014-11-19 17:10:55 · 751 阅读 · 0 评论 -
Oracle 执行计划(Explain Plan) 说明
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。 如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以断定是执行计划出了问题。 看懂执行计划也就成了SQL优化的先决条件。 这里的SQL优化指的是SQL性能问题的定位,定位后就可以解决问题。 一. ...原创 2014-11-19 17:10:25 · 2146 阅读 · 0 评论 -
oracle导出excel 方法总结
oracle导出excel一、oracle导出excel 方法一:最简单的方法---用工具plsql dev执行File =>newReport Window 。在sql标签中写入需要的sql,点击执行或按快捷键F8,会先吃出查询结果。在右侧工具栏,可以选择按钮另存为html、copy as html、exportresults,其中export results按钮中就可...原创 2014-11-19 11:38:01 · 1483 阅读 · 0 评论 -
oracle translate()详解+实例(替换字符函数)+rpad()填充函数
一、语法: TRANSLATE(string,from_str,to_str) 二、目的 返回将(所有出现的)from_str中的每个字符替换为to_str中的相应字符以后的string。TRANSLATE 是 REPLACE 所提供的功能的一个超集。如果 from_str 比 to_str 长,那么在 from_str 中而不在 to_str 中的额外字符将从 string 中被删除,因...原创 2014-10-28 16:19:35 · 382 阅读 · 0 评论 -
ORACLE 普通表转换成分区表(在线重定义方法详解 转载)
什么是分区表,分区表详解:http://langgufu.iteye.com/blog/1552042在一个高可用系统中,如果需要改变一个表的定义是一件比较棘手的问题,尤其是对于7×24系统。Oracle提供的基本语法基本可以满足一般性修改,但是对于把普通堆表改为分区表,把索引组织表修改为堆表等操作就无法完成了。而且,对于被大量DML语句访问的表,幸运的是,Oracle从9i版本开始提...原创 2014-10-21 17:01:49 · 277 阅读 · 0 评论 -
oracle 动态执行命令execute immediate
可以使用execute immediate来动态执SQL语句和存储过程,在这次的项目中我有一类用“P_InsertInto_”开头的存储过程,后面是表名如:P_InsertInto_AC01、P_InsertInto_AC02等等,用来给AC01、AC02........这些表插入数据的,我们就只能用execute immediate动态执行这些过程,像这样速度和代码编写上就会方便很多了。这个...原创 2016-06-12 17:42:12 · 5602 阅读 · 0 评论 -
Oracle表与索引的分析及索引重建(转载)
Oracle表与索引的分析及索引重建2010年12月31日 1.分析表与索引(analyze 不会重建索引) analyze table tablename compute statistics 等同于 analyze table tablename compute statistics for table for all indexes for all columns...原创 2015-04-27 17:08:52 · 208 阅读 · 0 评论 -
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和总结(转载)
在web开发中,避免不了对日期的操作,就几种常见的日期操作做个总结(部分参考网络,在此表示感谢):java.util.Date、Java.util.Calendar、java.sql.Date、java.sql.Time、java.sql.Timestamp java.lang.Object ....|__java.util.Date ..........|__java.sql.D...原创 2015-04-15 16:36:11 · 220 阅读 · 0 评论 -
jdbc连接数据库使用sid和service_name的格式区别(转载)
最近使用jdbc连接oracle时报错: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: 10.12.162.84:1521:xxxx 登陆oracle数据发现在network/...原创 2015-04-10 10:25:01 · 240 阅读 · 0 评论 -
left join,right join,inner join的条件on和where的区别
1.left join,right joinselect * from a left join b on a.id = b.id and a.id ='12' 此sql语句效果:结果中a表筛选无效(即a表不是意愿中只有id='12'的行,而是a表全表记录依然都在,a.id='12'条件筛选无效果)原因:a和b左连接的时候,无论条件是什么,都会把a的所有记录呈现出来,on后面的条件只...2013-01-24 17:38:30 · 323 阅读 · 0 评论 -
sql分组查询语句--行内分组(非聚合分组)
row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)SQL> SELECT G.*, ROW_NUMBER() OVER(PARTITION BY a ,b ORDER BY c DESC) ROWN2 ...原创 2013-01-18 16:59:54 · 1148 阅读 · 0 评论 -
Oracle调优总结--1(经典实践 重要)
Problem Description:1.每个表的结构及主键索引情况2.每个表的count(*)记录是多少3.对于创建索引的列,索引的类型是什么?count(distinct indexcol)的值是多少?4.最后一次对表进行分析是在什么时间,分析后,是否又对相关表做过大的操作5.索引最后一次rebuild,是在什么时间,此后对表的操作类型又是什么状况?索引中浪费的空间是多少?6.这些表...原创 2013-11-13 10:52:39 · 594 阅读 · 0 评论 -
ORACLE分区表的概念及操作
此文从以下几个方面来整理关于分区表的概念及操作: 1.表空间及分区表的概念 2.表分区的具体作用 3.表分区的优缺点 4.表分区的几种类型及操作方法 5.对表分区的维护性操作. (1.) 表空间及分区表的概念 表空间: 是一个或多个数据文件的集合,所有的数据对象都存放在指定 此文从以下几个方面来整理关于分区表的概念及操作:1.表空间及分区表的概念2.表分区的具体作用3.表分区的优缺...原创 2012-06-05 16:29:24 · 116 阅读 · 0 评论 -
一些SQL语句
[size=medium] 1.forcing log switches sql> alter system switch logfile; 2.forcing checkpoints sql> alter system checkpoint; 3.adding online redo log...原创 2011-07-18 15:56:28 · 68 阅读 · 0 评论 -
Oracle创建用户、表空间、导入导出、...命令
[size=medium]//创建临时表空间create temporary tablespace test_temp tempfile 'E:\oracle\product\10.2.0\oradata\testserver\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048mextent manag...原创 2011-07-18 15:37:20 · 60 阅读 · 0 评论 -
oracle不同版本间数据的导入导出规则
Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。下面是据此总结的几个使用规则和相关测试: 规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器 1.1 使用9i客户端通过imp连接到10g数据库 C:\Documents and Settin...原创 2011-10-13 11:03:12 · 107 阅读 · 0 评论 -
oracle时间字段默认值,hibernate映射
oracle时间字段默认值用sysdate:create table table_name(id number not null,tempdate date default sysdate)创建序列号create sequence sequence_name increate by 1 start with 1 maxvalue 9999;inser...原创 2011-09-27 16:55:41 · 581 阅读 · 0 评论 -
Oracle定时任务(DBMS_Job)详解
对于DBA来说,数据库Job在熟悉不过了,因为经常要数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作。但是,Oracle定时器Job时间的处理上,千变万化,今天我把比较常用的写法汇总如下: 在总结之前,先把Job的参数一一说明一下: Job参数是有Submit()过程返回的binary_integer。 ...原创 2011-09-23 17:50:03 · 3957 阅读 · 0 评论 -
oracle存储过程详解--游标 实现增、删、改、查
自行创建,表复制的语句为 CREATE TABLE former_emp AS SELECT * FROM EMP; 游标(CURSOR)是ORACLE系统在内存中开辟的一个工作区,在其中存放SELECT语句返回的查询结果. 这个查询结果既可以是零记录,单条记录,也可以是多条记录.在游标所定义的工作区中,存在着一个指针(POINTER), 在初始...原创 2011-09-23 16:49:48 · 226 阅读 · 0 评论 -
主键约束和外键约束的完整性
在执行DML语句(例如INSERT、UPDATE或DELETE)时,数据库会确保表中的行都可以维护自身的完整性。这就是说对表中行所做的任何修改都不能影响表的主、外键关系。8.5.1 主键约束下面来看几个介绍主键约束的例子。customers表的主键是customer_id列,这意味着customer_id列中保存的每一个值都必须是唯一的。如果试图插入一个与主键列值重复的行,数据库就会返回...原创 2011-09-21 11:57:01 · 2310 阅读 · 0 评论 -
Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍(转帖)
[size=medium][color=blue]先假设有这么一个表:create table S_Depart ( DepartId INT not null, DepartName NVARCHAR2(40) not null...原创 2011-05-31 14:50:29 · 65 阅读 · 0 评论 -
Oracle字符串连接的方法
和其他数据库系统类似,Oracle字符串连接使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。比如执行下面的SQL语句:SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_EmployeeWHERE FName IS NOT NULL除了“||”,Oracle还支持使用CONCAT()函数进行字符串拼接,比如执行下面的...原创 2012-06-19 16:36:37 · 106 阅读 · 0 评论 -
如何在Oracle中使用Java存储过程(详解)(转)
Java存储过程今后在各大数据库厂商中越来越流行,功能也越来越强大。这里以Oracle为例,介绍一下java存储过程的具体用法。一、如何创建java存储过程?通常有三种方法来创建java存储过程。1. 使用oracle的sql语句来创建:e.g. 使用create or replace and compile java source named "<name>" as...原创 2012-06-19 17:28:47 · 124 阅读 · 0 评论 -
如何在数据库中存储一棵树
树形结构的数据在项目开发中比较常见,比如比较典型的是论坛主题留言。每一个主题(节点)可以有n个留言(子节点)。这些留言又可以有自己的留言。因此这种结构就是一颗树。本文讨论的是数据库中如何存储这种树形结构。假设有如下一棵树:方法一注意:本例中的数据库是SQLite,因此SQL语句只对SQLite有效,其他数据库可以参考该写法。要存储于数据库中,最简单直接的方法,就是存储每个...原创 2013-06-21 17:58:44 · 499 阅读 · 0 评论 -
Oracle递归查询
创建表 建表语句:CREATE TABLE SC_DISTRICT( ID NUMBER(10) NOT NULL, PARENT_ID NUMBER(10), NAME VARCHAR2(255 BYTE) NOT NULL);ALTER TABLE SC_D...原创 2013-06-21 17:49:32 · 105 阅读 · 0 评论 -
Oracle主键约束、唯一键约束、唯一索引的区别(转)
一般,我们看到术语“索引”和“键”交换使用,但实际上这两个是不同的。索引是存储在数据库中的一个物理结构,键纯粹是一个逻辑概念。键代表创建来实施业务规则的完整性约束。索引和键的混淆通常是由于数据库使用索引来实施完整性约束。 接下来我们看看数据库中的主键约束、唯一键约束和唯一索引的区别。SQL> select * from v$version; BANNER-----...原创 2012-12-11 15:42:16 · 438 阅读 · 0 评论 -
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 ...原创 2012-12-06 15:22:49 · 94 阅读 · 0 评论 -
ORACLE 中SCHEMA的概念以及数据库,表空间,数据文件等的区别(转)
有的人还是对schema的真正含义不太理解,现在我再次整理了一下,希望对大家有所帮助。我们先来看一下他们的定义:A schema is a collection of database objects (used by a user.).Schema objects are the logical structures that directly refer to the databa...原创 2012-03-29 16:43:58 · 1163 阅读 · 1 评论